最大のディレクトリまたは最大のファイルを見つける方法 [複製]


33

Linuxでは、ディレクトリの下で最大のファイルや最大のディレクトリをリストするコマンドを探しています。


私が見つけた最も便利なツールはxdiskusage(xdiskusage.sourceforge.net)です。これにより、ファイルのサイズがグラフィカルに表示されます。素晴らしいツール!(と、それはX11と直接動作します)
jcoppens

これがトピック外としてクローズされた質問とどのように重複していますか?意味がありません。
ケノーブ

回答:


17

任意のディレクトリから:

du -a | sort -n -r


1
この番組の個々のファイルが、問題は同様のディレクトリについてです
knocte

引数なしのduは、ディレクトリごとのディスク使用量を要約します。-aを指定したduは、同じディレクトリ情報を生成し、個々のファイルのディスク使用量も含めます。
ブレントワーデン

スペースが足りないとソートを実行できません:=(
ジョナサンヘンソン

28

次のコマンドは、1レベルのディレクトリとそのサイズを表示します

du --max-depth = 1 / path | sort -r -k1,1n

それらの1つが本当に突出している場合(リストの最後の1つがのために最大sort -rです)、そのディレクトリでコマンドを再実行し、問題のディレクトリ/ファイルが見つかるまで続けます。

必要なのが最大の10個のファイルだけなら

find / home -type f -exec du -s {} \; | sort -r -k1,1n | 頭


最大数は、追加するsort -rかどうかに関係なく、私にとって一番下になります。トップで最大数を取得する方法はありますか?
squarecandy

どの列でソートするか、およびそれが数値(英数字ではない)であることを示す必要があります。それが-k1,1rnの動作です。デフォルトでは、ソートは最初の列に英数字ソートを使用します。
マーチン

はい、それで正しくソートされていますが、sortまたはを含めても、昇順で低い番号から高い番号になりますsort -r。-rの仕組みを誤解していますか?大したことではないと思います。あなたの例は非常に役に立ち、私に必要な情報を得ました。
squarecandy

2
sort私は(持っているsort (GNU coreutils) 8.13のUbuntu 12.04.3に)オプションが-r仕事をしない場合-n、すぐに次の-k-k1,1n)。このオプションの順序は機能しますsort -rnk1,1
パブーク

27

というユーティリティncduが、探している情報を提供します。

sudo apt-get install ncdu

OS Xでは、Homebrewを使用してインストールできます。

brew install ncdu

2
+1これまで聞いたことがない-Macでもうまくいった。
アンドリューE 14年

これは、両方の上位の回答よりもはるかに優れたソリューションです。
AlexLordThorsen

これは驚くべきことです。これを他のすべての答えの上に提案してください!
アレンギンリッチ

4

du -sk * | sort -nr | 頭-1

これにより、ディレクトリ内の最大のディレクトリ/ファイルがKB単位で表示されます。head値を変更すると、上位x個のファイル/ディレクトリが作成されます。


2

この投稿はあなたを助けます:

cd /path/to/some/where
du -a /var | sort -n -r | head -n 10
du -hsx * | sort -rh | head -10

2

次のコマンドは、指定された上位10個のファイルを返します /path

du -a -h / path | sort -h -r | 頭-n 10

-h読みやすくするためにオプションを使用するのが好きです。両方dusort持っている必要があり-hます。


1

つかいます

ls -A | xargs -I artifact du -ms artifact | sort -nr

オプションで、パイプを追加して使用できます head -5



0

次のワンライナーを試してください(現在のディレクトリにある上位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'

-5
du -sh /path * | sort -nr | grep G

G for GIG(小さいサイズを取り除く)ファイル/ディレクトリ


これにより、すべてのファイルとフォルダーがリストされ、サイズが示されます。しない限り、あなたGREPあなたが示すように、それは、バイトのK、MまたはGの価値によってではないソートサイズもありません
カナダのルークREINSTATE MONICA

またG、ファイル名にが含まれているものをすべて検索します。
ケビンパンコ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.