題 如何在命令行linux中分析磁盤使用情況?


du 和 df 很好,但我不知道如何過濾他們提供的數據 SequoiaView。我想知道哪些是最大的文件夾和最大的文件一目了然。


89
2018-06-22 12:30


起源


你有沒有做過 ncdu? - SDsolar


答案:


您可能還想嘗試一下 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。


130
2017-10-21 14:45



也可以通過brew在OS X下使用。使用它來調用它可能是個好主意 ncdu -x -q - sorin
真棒!對我來說最好的選擇是 ncdu -q,甚至在ssh。 - Valter Silva


使用命令和選項的某些組合:

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

僅查看最少的幾個。如果你想大量使用它,那麼將它綁定到一個別名,例如在bash中加入〜/ .bashrc

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

44
2018-06-22 13:11



要查看 最大 很少,你需要的 -r 排序選項。 - RedGrittyBrick
我提交了@RedGrittyBrick建議和錯誤重定向 /dev/null 作為編輯需要批准。 - Jader Dias
我也會用 du -H 選項,但它打破了 sort 行為 - Jader Dias
@jumpnett:它重定向 standard error (在這種情況下進入黑洞即是 /dev/null)。 - Jaap Eldering
您可以使用 sort -h 使用人類可讀的後綴對值進行排序。 - allo


你可能想要 xdu

du -ax | xdu -n

還有更複雜的基於KDE的 Filelight


4
2018-06-22 15:00





我經常使用

du -hsc * | sort -h

每個選項的含義 du

  • h:以人類可讀格式顯示尺寸(1K,1M,1G,...)
  • s:總結:每個參數只顯示一個總數
  • c:還顯示總計

-h 選項 sort 讓它明白了 -h 格式(人類可讀) du。這個選項相對較新 sort,所以也許你的系統不支持它並強迫你使用它 du -sc | sort -n 代替。

如果您在遠程計算機上執行此過程並且該過程需要很長時間,您可能希望執行此過程後台或內部 screen 或類似的東西,以防止連接丟失。


2
2017-11-30 18:21





我想推荐一下 dutree,提供分層可視化。

您可以選擇更多或更少級別的詳細信息,並排除路徑以更好地控制可視化。您還可以比較不同的路徑。

enter image description here

它以Rust實現,快速高效。

$ 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

2
2018-05-03 09:33





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

du -h 給出一個人類可讀的磁盤空間列表估計值
2> / dev / null 抑制任何錯誤,例如拒絕讀取訪問
-hr 以相反的順序對人類可讀的文件大小進行排序
頭-n20 將列表減少到20

請注意,排除了讀訪問被拒絕的目錄和文件


1
2018-03-26 23:59