ディレクトリ[たとえば、 "/ mnt/hdd/PUB /"]内のファイルのリストを、ファイルの変更時刻順に生成するにはどうすればよいですか? [降順で、最も古い変更されたファイルはリストの最後にあります]
ls -A -lRt
素晴らしいでしょう: https://Pastebin.com/raw.php?i=AzuSVmrJ
ただし、ファイルがディレクトリ内で変更された場合、ディレクトリ全体が一覧表示されるため、貼り付けリンクは適切ではありません[「ディレクトリ」順に並べられたリストは必要ありません。「ファイルごと」に並べられたリストが必要です]
OS: OpenWrt [Perlがありません->十分なスペースがありません:(+ "stat"または "file"コマンドがありません]。
検索と並べ替えを使用します。
find YOUR_START_DIR -type f -print0 |
xargs -r -0 ls -l |
sort -k 6.2,6.5nr \
-k 6.7,6.8nr \
-k 6.10,6.11nr \
-k 7.2,7.3nr \
-k 7.5,7.6nr
並べ替え後のk個のオプションの長いリストは、年、月、日、時、分を並べ替えキーとして定義し、それらの順序で並べ替えます。
同じ分に保存されたファイルは注文されません。秒以上にしたい場合は、lsコマンドに「--full-time」を追加し、sortコマンドの最後に新しいキーを追加します。
Cygwinで部分的に機能する醜い答えは次のとおりです。
ls -A -lRt --full-time | sort | uniq | grep -v '^total\|:$'
ディレクトリ内のファイルを「変更」すると、ディレクトリの変更時刻が更新される可能性があります。ただし、ディレクトリに興味がない場合は、次のようにgrepしてください。
ls -AlRt | egrep -v '^d'