簡単に見えることをしようとするのにはわかりません。
複数のサブディレクトリを持つディレクトリがあり、すべて複数のファイル(jpgファイル)があります。このディレクトリに4つまたはN個のファイルのみを保持するコマンドを実行したいと思います。ファイルが作成されたときに関連する質問を見たことがあるので、ファイルの順序は重要ではありません。
私はls + headで遊んで -deleteオプションを使ってループに find を入れようとしましたが、それでも運はありません。
ベストアンサー1
たぶん、次のようなものがあります。
for dir in /target/dir/*/; do
(cd -- "$dir" && set -- *.jpg && [ "$#" -gt 4 ] && shift 4 && rm -f -- "$@")
done
を使用すると、zsh
次のように短縮できます。
for dir (/target/dir/*(/)) rm -f $dir/*.jpg(N[5,-1])