du コマンドは、ファイルやディレクトリが どれだけディスク容量を消費しているか を表示するコマンドです。
実務では、ディスク容量の調査や、大きなファイルやディレクトリの特定に利用されます。
構文(Syntax)
du [オプション] [FILE...]
主なオプション一覧
| オプション | 説明 | 使用例 |
|---|---|---|
| (なし) | ディレクトリごとの容量をブロック単位で表示 | du /var/log |
-h | 人間が読みやすい形式(KB, MB, GB)で表示 | du -h /var/log |
-s | 指定したディレクトリやファイルの合計のみ表示 | du -sh /var/log |
-a | ファイル単位でも容量を表示 | du -ah /var/log |
-c | 合計値を表示 | du -ch /var/log |
--max-depth=N | 指定階層まで表示 | du -h --max-depth=1 /var/log |
-d N | --max-depth=N と同じ(GNU拡張) | du -h -d 2 /var/log |
-x | 他のファイルシステムをまたがない | du -x / |
実行例
ディレクトリの容量を表示
du /var/log
出力例:
4 /var/log/apt
12 /var/log/journal
200 /var/log
人間が読みやすい形式で表示
du -h /var/log
出力例:
4.0K /var/log/apt
12K /var/log/journal
200K /var/log
ディレクトリ全体の合計のみ表示
du -sh /var/log
出力例:
200K /var/log
階層1までのディレクトリ容量を表示
du -h --max-depth=1 /home
出力例:
1.2G /home/alice
800M /home/bob
2.0G /home
ファイルごとの容量も表示
du -ah /var/log
複数ディレクトリの合計を表示
du -ch /var/log /etc
出力例:
200K /var/log
20K /etc
220K total
エラー例(存在しないディレクトリ)
du missing_dir
出力例:
du: cannot access 'missing_dir': No such file or directory
関連コマンド
df: ファイルシステムごとのディスク使用量を表示ls -lh: ファイルサイズを確認ncdu: 対話的にディスク使用量を確認できるツール(インストールが必要)
備考
duはファイルシステムのブロック数を基準にしているため、実際のファイルサイズと異なる場合があります。-hオプションは人間にわかりやすい形式を出力するため、日常的に利用されます。--max-depthを活用すると階層ごとにディレクトリ容量を素早く把握できます。
参考
- manページ: man7.org du(1)
- GNU Coreutils: https://www.gnu.org/software/coreutils/

コメント