Linuxでは、ディレクトリの下にある最大のファイルや最大のディレクトリをリストするコマンドを探しています。
任意のディレクトリから:
du -a | sort -n -r
ncdu
というユーティリティは、探している情報を提供します。
Sudo apt-get install ncdu
OS Xでは、Homebrewを使用してインストールできます。
brew install ncdu
次のコマンドは、1レベルのディレクトリとそのサイズを表示します
du --max-depth = 1/path |並べ替え-r -k1,1n
それらの1つが本当に突出している場合(リストの最後の1つがsort -r
)、そのディレクトリでコマンドを再実行し、問題のディレクトリ/ファイルが見つかるまで続行します。
最大のファイルが10個あれば、
/ home -type f -exec du -s {} \;を見つけます。 |ソート-r -k1,1n |頭
du -sk * |ソート-nr |頭-1
これにより、ディレクトリ内の最大のディレクトリ/ファイルがKBで表示されます。ヘッド値を変更すると、上位のファイル/ディレクトリが上位になります。
この投稿 はあなたを助けるでしょう:
cd /path/to/some/where
du -a /var | sort -n -r | head -n 10
du -hsx * | sort -rh | head -10
次のコマンドは、指定された/path
の上位10ファイルを返します
du -a -h/path |ソート-h -r |頭-n 10
読みやすいように-h
オプションを使用したい。 du
とsort
の両方に-h
が必要です。
使用する
ls -A | xargs -I artifact du -ms artifact | sort -nr
オプションで、パイプを追加してhead -5
Duを使用します。結果を注文するにはこれを試してください:
du | sort -n
次のワンライナーを試してみてください(現在のディレクトリで上位20個の最大ファイルを表示します)。
ls -1Rs | sed -e "s/^ *//" | grep "^[0-9]" | sort -nr | head -n20
または人間が読めるサイズ:
ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20
OSX/BSDで正しく動作する2番目のコマンド(
sort
には-h
がないため)、sort
をcoreutils
からインストールする必要があります。
したがって、これらのエイリアスはrcファイルに含めると便利です(必要なときはいつでも)。
alias big='du -ah . | sort -rh | head -20'
alias big-files='ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20'