ncdu
ncdu (NCurses Disk Usage)はディスク使用量をターミナル上のUIで表示するツール。
duの出力を読む代わりに、カーソルでディレクトリを掘り下げながら容量の内訳を確認できる。ディスクの空き容量が減ったときに、どのディレクトリが容量を占めているかを短時間で特定できる。
インストール
Homebrewでインストールする。
$ brew install ncdu
基本的な使い方
調べたいディレクトリを引数に渡して起動する。
$ ncdu ~/work
スキャンが完了すると、ディスク使用量の大きい順に一覧が表示される。
ncdu 2.9.2 ~ Use the arrow keys to navigate, press ? for help
--- /Users/example/work --------------------------------------------------------
402.0 MiB [###########] /media-archive
225.0 MiB [###### ] /backup
179.1 MiB [#### ] /sample-app
4.0 MiB [ ] /docs
*Total disk usage: 810.1 MiB Apparent size: 785.2 MiB Items: 16
行の先頭の数値がディスク使用量。[###]のグラフは同じ階層のなかでの占有割合を表す。名前の先頭に/が付く項目はディレクトリ。
最下行にはスキャンした範囲の合計が表示される。
キー操作
| キー | 動作 |
|---|---|
↑ ↓ | カーソル移動 |
Enter → | 選択したディレクトリを開く |
← | 親ディレクトリに戻る |
s | ディスク使用量順に並べ替え |
n | 名前順に並べ替え |
g | グラフとパーセント表示を切り替え |
c | 配下の項目数の表示を切り替え |
i | 選択した項目の情報を表示 |
r | 現在のディレクトリを再スキャン |
d | 選択したファイル・ディレクトリを削除 |
? | ヘルプを表示 |
q | 終了 |
大きなディレクトリを探す手順
1. 調べたい範囲の最上位からスキャンする
どこが容量を占めているか見当が付かない場合は、ホームディレクトリのような上の階層からスキャンする。
$ ncdu -x -r ~
-xオプションは同一ファイルシステム内だけをスキャンする。ncdu -x -r /のようにルートから調べる場合、/Volumes配下にマウントした外付けドライブやネットワークボリュームをたどらずに済む。
-rオプションを付けると読み取り専用で起動し、dキーによる削除が無効になる。読み取り専用のときは画面右上に[readonly]と表示される。調査だけが目的なら付けておくと誤操作を防げる。
2. 一番上の項目から掘り下げる
一覧はディスク使用量の降順に並んでいる。一番上の項目にカーソルを合わせてEnterで開くと、その配下の内訳が同じ形式で表示される。
ncdu 2.9.2 ~ Use the arrow keys to navigate, press ? for help
--- /Users/example/work/media-archive ------------------------------------------
/..
321.0 MiB [###########] /videos
81.0 MiB [## ] /photos
*Total disk usage: 402.0 MiB Apparent size: 398.0 MiB Items: 4
先頭の/..は親ディレクトリを指す項目。カーソルを合わせてEnterを押しても親に戻れる。
同じ操作を繰り返し、グラフの長い枝をたどっていく。
ncdu 2.9.2 ~ Use the arrow keys to navigate, press ? for help
--- /Users/example/work/media-archive/videos -----------------------------------
/..
321.0 MiB [###########] interview-2025.mov
*Total disk usage: 321.0 MiB Apparent size: 320.0 MiB Items: 1
media-archiveの402.0 MiBのうち321.0 MiBをinterview-2025.movが占めていると分かる。
3. 見つけたファイルの詳細を確認する
iキーを押すと、選択した項目の詳細が表示される。
┌── Item info ─────────────────────────────────────────────┐
│ │
│ Name: interview-2025.mov │
│ Type: File │
│ Disk usage: 321.0 MiB (336,592,896) │
│ Apparent size: 320.0 MiB (335,544,320) │
│ │
│ Press i to close this window │
└──────────────────────────────────────────────────────────┘
Disk usageは実際にディスク上で占有しているサイズ、Apparent sizeはファイルそのもののサイズ。もう一度iキーを押すと閉じる。
4. 親に戻って次の候補を調べる
←キーで親ディレクトリに戻り、次に大きい項目を同じ手順で掘り下げる。上位数件をたどれば、容量を消費している場所はおおむね把握できる。
ファイルを削除した後はrキーで再スキャンすると、削除後のサイズが一覧に反映される。
表示の切り替え
割合を数値で確認したい場合はgキーを押す。押すたびにグラフのみ、パーセントのみ、両方、非表示の順に切り替わる。
ncdu 2.9.2 ~ Use the arrow keys to navigate, press ? for help
--- /Users/example/work --------------------------------------------------------
402.0 MiB [ 49.6% ###########] /media-archive
225.0 MiB [ 27.8% ###### ] /backup
179.1 MiB [ 22.1% #### ] /sample-app
4.0 MiB [ 0.5% ] /docs
cキーを押すと、ディレクトリ配下の項目数が表示される。サイズは小さくてもファイル数が極端に多いディレクトリを探す場合に役立つ。
ncdu 2.9.2 ~ Use the arrow keys to navigate, press ? for help
--- /Users/example/work --------------------------------------------------------
402.0 MiB [ 49.6% ###########] 4 /media-archive
225.0 MiB [ 27.8% ###### ] 1 /backup
179.1 MiB [ 22.1% #### ] 6 /sample-app
4.0 MiB [ 0.5% ] 1 /docs
