私は次のディレクトリからファイル/ディレクトリのディスク使用量を取得できることを知っています。
for file in $(ls); do du --hum --sum $file; done
ファイル/ディレクトリ名にスペースが含まれていると失敗するようです。だから私はこれを試しました:
find . -maxdepth 1 -type d -print0 | xargs -0 du --hum --sum
これはただ次の結果をもたらします:
2.3G .
そして私のディレクトリには8つのサブディレクトリがあります。
答え1
--sum
次のようにmax-lengthディレクティブを適用し、du呼び出しからそれを取り出すこともできます。
du --hum --max-depth=1
また、空白のあるディレクトリも表示されます。
次の出力例は、ディレクトリが空白で表示されることを示しています。
4.0K ./regular_dir1
4.0K ./regular_dir2
4.0K ./dir with spaces
答え2
EWJ00ほど良くない:
find . -maxdepth 1 -type d -print0 | while read -d $'\0' file; do du --hum --sum "$file"; done