検索結果に「人が読める」ファイルサイズを表示するには?

検索結果に「人が読める」ファイルサイズを表示するには?

Centosサーバーですべての大容量ファイルを見つけようとしています。そのためには、以下を使用しています。

find / -maxdepth 10 -size +100000 -ls

-lsに変更してみましたが、-lshこれは許可されていません。

これらの結果を人間が読めるサイズ(サフィックスk、M、...を使用)として表示するにはどうすればよいですか?

ベストアンサー1

findのようなものはありませんls。必要にls -h応じて電話する必要がありますls

find / -maxdepth 10 -size +100000 -exec ls -lh {} +

他のファイルシステムへの再帰を避けるためにオプションを選択することをお勧めします-xdev。ディスク容量が気になる場合は役に立ちません。

find / -xdev -maxdepth 10 -size +100000 -exec ls -lh {} +

zshをシェルとして使用する場合は、find代わりにglob修飾子を使用できます。ファイルサイズを制限するのは簡単です。Lサイズの後には、数字の前にオプションの単位があります。最大深度に興味がない場合は、**/サブディレクトリへの再帰を使用できます。最大深さに興味がある場合は、zsh globモードに「maximum」という表現がないため、より問題になります。Nデバイス間の再帰を防ぐには、glob修飾子を使用してください。デバイス番号を探す必要があります。 Linuxでコマンドを使用するか(番号のみを表示)、zsh独自の組み込みコマンド(実行してロード)を使用してdデバイス番号を見つける必要があります。それ)。statstat -c %d /statzmodload zsh/stat

ls -lh /**/*(L+M99d$(stat -c %d /))

おすすめ記事