回答:
以下を使用できます。
ls -Rt
where -R
は再帰的な(サブディレクトリを含む)ことを-t
意味し、「最終更新日でソートする」ことを意味します。
変更日でソートされたファイルのリストを表示するには、次を使用します。
ls -l -Rt
これを実現するためにエイリアスを作成することもできます。
alias lt='ls -lht'
lt
where -h
はより読みやすい出力を提供します。
ls -lrt[RhA]
。は-r
並べ替え順序を逆にして、最近編集したものをリストの一番下に残します...
-ila
必要な情報のほとんどすべてが得られます。$ ls -ilaRt
ll -Rt
最後に修正された日付でファイルを確認する必要があったため、使用は私にとって完璧なソリューションだったので、この回答を拡張しました。これは他の人に役立つかもしれません。
ll
isは存在せず、コマンドでもありません。ほとんどはbashシェルのエイリアスですが、most / some /?で定義されていません。Linuxディストリビューション。alias ll='ls -l'
/etc/bash.bashrcまたは/etc/.bashrcでそれを定義する人もいます。したがって、機能せず、OPシステムに存在しない可能性があります。ls -l -Rt
少なくとも、ls
posixで定義されている標準コマンドと同様に使用してください。または、あなたが意味したことを指定しますalias ll='ls -l'; ll -Rt
。
すべてのファイルが変更日で一緒にソートされ、それらが存在するディレクトリを示しているが、ディレクトリごとにグループ化されていないマスターリストが必要な場合は、次のように使用できます。
find . -type f -printf "%-.22T+ %M %n %-8u %-8g %8s %Tx %.8TX %p\n" | sort | cut -f 2- -d ' '
結果は次のようになりls -l
ます。
-rw-r--r-- 1ルートルート3892 2009年8月11日11:03:36 /usr/share/man/man1/xmllint.1.gz -rw-r--r-- 1ルートルート22946 08/13/2009 11:59:20 /usr/share/man/man1/curl.1.gz -rw-r--r-- 1ルートルート728 08/17/2009 12:06:33 /usr/share/man/man1/thunderbird.1.gz -rw-r--r-- 1ルートルート873 08/18/2009 10:52:47 /usr/share/man/man1/libgnutls-config.1.gz -rw-r--r-- 1ルートルート2552 08/19/2009 02:00:34 /usr/share/man/man3/Purple.3pm.gz -rw-r--r-- 1ルートルート9546 2009年8月19日02:02:00 /usr/share/man/man1/pidgin.1.gz -rw-r--r-- 1ルートルート2201 08/19/2009 02:02:46 /usr/share/man/man3/Pidgin.3pm.gz -rw-r--r-- 1ルートルート926 08/19/2009 02:03:05 /usr/share/man/man1/purple-remote.1.gz -rw-r--r-- 1ルートルート18052 2009年8月19日04:11:47 /usr/share/man/man1/mono.1.gz -rw-r--r-- 1ルートルート1845 08/19/2009 04:11:47 /usr/share/man/man5/mono-config.5.gz
Mac OS Xを使用している場合、オプション-printf はBSD findでは使用できません(このエラーが発生します:)find: -printf: unknown primary or operator
。さいわい、HomebrewからGNU findをインストールできます(FinkとMacportsにもオプションがあるはずです)。
brew install findutils
インストール後、GNU findはとして利用できるはずですgfind
。したがって、必要なのは上の行を次のように変更することだけです。
gfind . -type f -printf "%-.22T+ %M %n %-8u %-8g %8s %Tx %.8TX %p\n" | sort | cut -f 2- -d ' '
find
著者ほど詳しくない人(私のような)にとって、への引数-printf
はman find
(printf
そのページの5番目のインスタンスを検索して)にあるフォーマットディレクティブです。
find . -type f -print0 | xargs -0 stat -f "%m %Sp %l %-8Su %-8Sg %8z %Sm %N" | sort | cut -f 2- -d' '
組み込みユーティリティのみを使用してMacOSでほぼ同じ出力を提供します
sort -r
並べ替えを逆にし、最後に変更されたファイルを上に表示します。
以下のためzsh
のユーザー、あなたはまた、使用することができグロブ修飾子を(も上の文書化man zshexpn
):
echo *(om)
どこo
の略で、ソート順アップとm
の略最終更新時刻。
これは、forループまたは別のコマンドで使用すると便利です。
for file in *(^om); do
[ -e "$file" ] || continue
# do something with file orderer from least recently modified to last modified
done
または、別のグロブ修飾子と連鎖します:
last_modified_file=(*(om[1]))