ディレクトリごとの容量が大きい順で並び替えて表示する

ディスク容量が少なくなって、どのディレクトリが使用しているか確認したいときに「du」コマンドで使用している容量は下記のように確認できます

$ sudo du -sh /var/www/vhosts/*/
219M    /var/www/vhosts/blog.example.com/
1.5G    /var/www/vhosts/www.example.com/
5.9G    /var/www/vhosts/cloud.example.com/
59M     /var/www/vhosts/test.example.com/

「du -sh <対象ディレクトリ>」で、下記のコマンドを使用しています。/var/www/vhosts/*/ としているので、下位のディレクトリ毎の合計サイズが表示されています

  • 「-h」オプションは、人間にとって読みやすいようにバイト数を単位に変換して表示します。
  • 「-s」オプションは、ディレクトリの合計サイズのみを表示します

だけど、確認したいディレクトリが多いとソートされていないので、どのディレクトリの容量が多いのかは下記のようにわかりにくいです。
一番多いのは、/var/log/php-fpm/の107Mですが、ソートしていないので、よく確認しないとわかりません

$ sudo du -sh /var/log/*/ 
4.1M    /var/log/anaconda/
33M     /var/log/audit/
4.0K    /var/log/chrony/
37M     /var/log/httpd/
576K    /var/log/letsencrypt/
20K     /var/log/mariadb/
35M     /var/log/pcp/
107M    /var/log/php-fpm/
4.0K    /var/log/private/
4.0K    /var/log/qemu-ga/
8.0K    /var/log/samba/
4.0K    /var/log/sssd/
424K    /var/log/tuned/

ぱっと見た感じでわかりやすくするには、「sort」コマンドを組み合わせて、「du -sh [対象ディレクトリ] | sort -hr」とすればいいです

$ sudo du -sh /var/log/*/ | sort -hr
107M    /var/log/php-fpm/
37M     /var/log/httpd/
35M     /var/log/pcp/
33M     /var/log/audit/
4.1M    /var/log/anaconda/
576K    /var/log/letsencrypt/
424K    /var/log/tuned/
20K     /var/log/mariadb/
8.0K    /var/log/samba/
4.0K    /var/log/sssd/
4.0K    /var/log/qemu-ga/
4.0K    /var/log/private/
4.0K    /var/log/chrony/

コマンドのオプションは意味は以下となります

「du コマンド」

  • 「-h」オプションは、人間にとって読みやすいようにバイト数を単位に変換して表示します。
  • 「-s」オプションは、ディレクトリの合計サイズのみを表示します

「sort コマンド」

  • 「-h」オプションは、人間にとって読みやすいようにバイト数を単位に変換して表示します。
  • 「-r」オプションは、逆順でソートとなりますので、容量の大きい順にソートされます

スポンサーリンク

0
0