100 MBを超えるファイルが複数あるフォルダをお探しですか?

100 MBを超えるファイルが複数あるフォルダをお探しですか?

100 MBを超えるファイルが複数あるフォルダのみを一覧表示する方法は?

答え1

そして:findawk

すべてのファイルを一覧表示 > 100M

$ find . -type f -size +100M
./bar/ok
./foo/okp
./foo/ok

今フィルタリングしてくださいawk

$ find . -type f -size +100M -exec dirname {} + |
    awk '{dir[$0]++}END{for (i in dir) if (dir[i] >= 2) print i}'
./foo

要求に応じて、100Mを超えるファイルが複数含まれているディレクトリのみを出力します。

実装が複数のディレクトリ同時サポートをサポートしていない場合は、代わりにdirnameコマンドを使用してください。{} \;find

答え2

%hGNUツールを使用すると、100MiB()を超えるすべてのファイルのディレクトリを印刷し、すべての重複結果を一度に印刷できますuniq -d
改行を含むディレクトリ名を処理するには、NUL文字(\0およびオプション-z)を行終端として使用し、最後のステップでそれを改行に変換します。

find . -type f -size +100M -printf '%h\0' | uniq -dz | tr '\0' '\n'

各結果に見つかった一致数(> = 2)を付けるには、-c次のように追加しますuniq

find . -type f -size +100M -printf '%h\0' | uniq -cdz | tr '\0' '\n'

関連情報