約束の地

キャロ組

Ruby でディレクトリ名一覧を最終更新時刻の順番に並べて取得する方法

結論

以下の例ではカレントディレクトリにあるディレクトリ名を対象にしています*1

最終更新時刻の昇順に並べる場合

Dir.glob('*/').sort_by{ |directory_name| File.mtime(directory_name) }.each do |sorted_directory_name|
  puts sorted_directory_name
end

最終更新時刻の降順に並べる場合

Dir.glob('*/').sort_by{ |directory_name| File.mtime(directory_name) }.reverse.each do |sorted_directory_name|
  puts sorted_directory_name
end

参考

*1:globメソッドの部分

Powered by はてなブログ