私たちは UNIX クラスを始めたばかりで、さまざまな Bash コマンドを学習しています。課題には、その下に多数のフォルダーがあるディレクトリに対してさまざまなコマンドを実行することが含まれます。
次のコマンドを使用して、ルート フォルダーからすべての通常ファイルを一覧表示してカウントする方法を知っています。
find . -type l | wc -l
しかし、ディレクトリ全体で最大のファイルを見つけるために、そこからどこに行けばよいのかを知りたいです。コマンドについてはいくつか見たことがありますdu
が、それを学習していないので、学習した内容から、何らかの方法でそれをコマンドに関連付ける必要があると思いますls -t
。
私の「専門用語」が正しくなかったらご容赦ください。まだ慣れていないのですから!
ベストアンサー1
引用元これリンク-
特定のディレクトリとそのサブディレクトリ内の最大10個のファイル名(ディレクトリではない)を検索して印刷したい場合
$ find . -type f -printf '%s %p\n'|sort -nr|head
検索を現在のディレクトリに制限するには、find で「-maxdepth 1」を使用します。
$ find . -maxdepth 1 -printf '%s %p\n'|sort -nr|head
最も大きい「ファイルとディレクトリ」の上位 10 個を印刷するには、次のようにします。
$ du -a . | sort -nr | head
** 上の例のすべてにおいて、上位 X 個の最大ファイルを印刷するには、上記の「head」のみではなく「head -n X」を使用します。