これは再帰的なバージョンです (つまり、特定のディレクトリまたはそのサブディレクトリのいずれかで最近更新されたファイルを見つけます)
find /dir/path -type f -printf "%[email protected] %p\n" | sort -n | cut -d' ' -f 2- | tail -n 1
コマンドラインの簡単な素人説明:
find /dir/path -type f
ディレクトリ内のすべてのファイルを検索します-printf "%[email protected] %p\n"
%[email protected]
の各ファイルの行を出力します 1970 エポックおよび%p
以降の float 秒です。 はファイル名のパスで、\n
です。 は改行文字です- 詳細については、
man find
を参照してください
|
シェルpipe
です (man bash
を参照)Pipelines
のセクション )sort -n
最初の列でソートし、トークンを辞書式ではなく数値として扱うことを意味します (man sort
を参照) )cut -d' ' -f 2-
man cut
を参照)。 )- 注:
-f 2
2 番目のトークンのみを出力します
- 注:
tail -n 1
最後の行を出力することを意味します (man tail
を参照) )
ls -Art | tail -n 1
これにより、最後に変更されたファイルまたはディレクトリが返されます。あまりエレガントではありませんが、機能します。
使用フラグ:
-A
.
を除くすべてのファイルをリストします そして ..
-r
並べ替え中の逆順
-t
時間順、新しい順
ls -t | head -n1
このコマンドは、実際には、現在の作業ディレクトリ内の最新の変更されたファイルまたはディレクトリを提供します。