パターンのあるファイルを見つけて最新のファイルをインポートする

パターンのあるファイルを見つけて最新のファイルをインポートする

特定のパターンを持つファイルを見つけて、パターンに一致する最新のファイルをフルパスで印刷したいと思います。

find ../*.gz -type f -print0 | sort -nr | cut -d: -f2- | head -n 1

同じフルパスをどのように印刷できますか?

ユーザーが要求した場合ls -l

ls -l
drwxrwxr-x 3 xxx xxx 4096 Jun 27 23:29 fa1caae85
drwxrwxr-x 3 xxx xxx 4096 Jun 27 23:28 ga1c93eda
drwxrwxr-x 3 xxx xxx 4096 Jun 27 23:28 la1cbbh05
drwxrwxr-x 3 xxx xxx 4096 Jun 27 23:08 node_modules
drwxrwxr-x 3 xxx xxx 4096 Jun 27 23:08 _tasks

最初の3つのフォルダにはすべて必須ファイルが含まれていますが、そのフォルダから最新のファイルをインポートしたいと.gz思います。.gz

ベストアンサー1

非正統的なアプローチ:

zsh -c 'print -r $PWD/**/*.gz(.om[1])'

どこ

  • ()afterは*.gzいわゆるglob修飾子を使用することを意味します。
  • .一般ファイルのみが考慮されます。
  • om編集時間で並べ替え
  • [1]最初の要素のみを取る
  • D隠しgzファイル(thisなど)も考慮するには、修飾子を追加してくださいfind

明らかに、すでにzshを使用している場合は、それを呼び出すために使用する必要はありませんzsh -c

おすすめ記事