ディレクトリの各サブディレクトリのサイズを表示する簡単な方法

ディレクトリの各サブディレクトリのサイズを表示する簡単な方法

どのディレクトリが最も多くのディスク容量を占めているかをすばやく確認したいと思います。

試してみましたが、du -sh subdir大きなディレクトリでは20秒以上かかりました。

この方法を使用して、ホームディレクトリのすべてのサブディレクトリサイズを一度に表示する方法がわかりませんが、数分かかることがあります。

これを行う簡単な方法はありますか?

ファイルサイズを表示する必要はなく、ディレクトリを表示するだけです。

ベストアンサー1

サンプルディレクトリ

$ ls -aF
./  ../  .asd/  folder1/  folder2/  list  t1  t2  xyz/

フォルダサイズのみを確認するには(隠しフォルダを除く):

$ find -type d -name '[!.]*' -exec du -sh {} + 
4.0K    ./folder1
4.0K    ./folder2
8.0K    ./xyz

最後に合計も必要な場合:

$ find -type d -name '[!.]*' -exec du -ch {} + 
4.0K    ./folder1
4.0K    ./folder2
8.0K    ./xyz
16K total

結果を並べ替えます。

$ find -type d -name '[!.]*' -exec du -sh {} + | sort -h
4.0K    ./folder1
4.0K    ./folder2
8.0K    ./xyz

ソート順を逆にするには:

$ find -type d -name '[!.]*' -exec du -sh {} + | sort -hr
8.0K    ./xyz
4.0K    ./folder2
4.0K    ./folder1

ディレクトリも非表示にする必要がある場合は、-name '[!.]*'findコマンドからそのディレクトリを削除してください。 .fordu以外の他のコマンドはわかりません。dffile system disk space usage

find -maxdepth 1 -type d -name '[!.]*' -exec du -sh {} +サブフォルダの表示を防ぐために使用されます。

おすすめ記事