コマンドラインのLinuxでディスク使用量を分析するにはどうすればいいですか?


92

du そして df いいですが、データをどのようにフィルタリングして私のやり方で提供するのかわかりません SequoiaView 。一目で最大のフォルダと最大のファイルがどれであるかを知りたいのですが。


やってみました ncdu
SDsolar

回答:


136

あなたも試してみたいかもしれません NCursesディスク使用量 別名 ncdu

好きに使う ncdu -x -q リモートで起動している場合(例: ssh )と ncdu -x さもないと。

ncdu 1.6 ~ Use the arrow keys to navigate, press ? for help
    --- /home/geek -----------------------------------------------------------------
       27.6MiB  /qm test 1 rework
      312.0kiB  /sidebar
       88.0kiB  /rackerhacker-MySQLTuner-perl-6add618
        8.0kiB  /.w3m
        4.0kiB  /.cache
    e   4.0kiB  /.ssh
      160.0kiB   ng.tar.gz
       76.0kiB   plowshare_1~svn1673-1_all.deb
        4.0kiB   .bashrc
        4.0kiB   .bash_history
        4.0kiB   .profile
        4.0kiB   .htoprc
        4.0kiB   .bash_logout
        0.0  B   .lesshst

これはMac OS Xでも利用可能です。

コマンドラインに次のフラグが役立つ場合があります。

-q Quiet mode, doesn't update the screen 10 times a second
   while scanning, reduces network bandwidth used

-x Don't cross filesystem borders (don't descend into a
   directory which is a mounted disk)

Sorin Sbarneaに感謝します。


1
OS Xでもbrew経由で利用可能です。それを使ってそれを呼び出すことは良い考えかもしれません ncdu -x -q
sorin

1
驚くばかり!私にとって最良の選択肢は ncdu -q、SSHでも。
Valter Silva

44

コマンドとオプションを組み合わせて使用​​します。

du --max-depth=1 2> /dev/null | sort -n -r | head -n20

最も大きいものだけを見るため。あなたがそれをたくさん使いたいのなら、それをエイリアスにバインドしてください。 〜/ .bashrcに追加してbashで

alias largest='du --max-depth=1 2> /dev/null | sort -n -r | head -n20'

1
を見る 最大 いくつか、あなたは必要です -r ソートオプション
RedGrittyBrick

@RedGrittyBrick提案とエラーリダイレクトをに送信しました /dev/null 承認対象の編集として。
Jader Dias

私も使用します du -H オプションが、それは壊れます sort 動作
Jader Dias

1
@ジャンプネット:リダイレクトします standard error (この場合はブラックホールに /dev/null
Jaap Eldering

3
あなたが使用することができます sort -h 人間が判読できる接尾辞を付けて値を並べ替える。
allo


2

私はいつも使う

du -hsc * | sort -h

各オプションの意味 du

  • h:判読可能な形式でサイズを表示(1K、1M、1G、...)
  • s:要約:各引数の合計のみを表示します
  • c:総計も表示する

-h オプションオン sort それを理解させる -h フォーマット(判読可能)on du。このオプションは比較的新しいです sortつまり、あなたのシステムはそれをサポートしておらず、あなたにそれを使うよう強制するかもしれません。 du -sc | sort -n 代わりに。

あなたがリモートマシン上でそれを実行し、そのプロセスが長時間かかる場合、あなたはおそらくこのプロセスをバックグラウンドで、あるいは内部で実行したいでしょう。 screen または接続の喪失を防ぐための似たようなもの。


2

おすすめしたい Dutree 階層的な視覚化を提供します。

より多くの、またはより少ない詳細レベルを選択し、視覚化をより適切に制御するためにパスを除外することができます。異なるパスを比較することもできます。

enter image description here

それは錆で、速くそして効率的に実行されます。

$ dutree -h
Usage: dutree [options] <path> [<path>..]

Options:
    -d, --depth [DEPTH] show directories up to depth N (def 1)
    -a, --aggr [N[KMG]] aggregate smaller than N B/KiB/MiB/GiB (def 1M)
    -s, --summary       equivalent to -da, or -d1 -a1M
    -u, --usage         report real disk usage instead of file size
    -b, --bytes         print sizes in bytes
    -f, --files-only    skip directories for a fast local overview
    -x, --exclude NAME  exclude matching files or directories
    -H, --no-hidden     exclude hidden files
    -A, --ascii         ASCII characters only, no colors
    -h, --help          show help
    -v, --version       print version number

1
du -h 2> /dev/null | sort -hr | head -n20

du -h 人間が読める形式のディスク容量の概算値
2&gt; / dev / null 読み取りアクセス拒否などのエラーを抑制します。
sort -hr 人間が読めるファイルサイズを逆の順序でソートします。
頭-n20 リストを20に減らす

読み取りアクセスが拒否されたディレクトリおよびファイルは除外されることに注意してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.