(转载)统计子目录大小情况并排序显示

引用地址:http://blog.chinaunix.net/u/6542/showart.php?id=394070

使用 du -sh * 可以显示指定目录下各文件/目录的大小情况,但是输出结果不够人性化(human-readable),以 /usr/share/目录为例

du -sh /usr/share/* 会输出如下信息

654K    /usr/share/aclocal
141K    /usr/share/aclocal-1.9
318K    /usr/share/alsa
145K    /usr/share/applications
1.9M    /usr/share/audacious
170K    /usr/share/audacious-plugins
24K /usr/share/aumix
1.2M    /usr/share/autoconf
926K    /usr/share/automake-1.9

如果要非常直观地按大到小显示个文件目录的大小,我们可以使用脚本来完成,对 du 后的信息进行处理后再按照要求输出,比如只输出大小在多少M以上的目录信息

这是很久以前的一个脚本,这几天正好有时间,就整理了下。

运行方式:dfdir.pl <目录名> [整数][k/m]

例子1:排序显示 /usr/share 下所有文件目录大小信息
dfdir.pl /usr/share

例子2:显示 /usr/share 下大于 5M 的文件或目录信息
dfdir.pl /usr/share 5m

输出结果如下:
113.6M  /usr/share/fonts
50.1M  /usr/share/man
32.5M  /usr/share/gtk-doc
18.9M  /usr/share/info
17.9M  /usr/share/themes
17.4M  /usr/share/vim
12.6M  /usr/share/xml
8.9M  /usr/share/icons

作者: 投稿者(Guest)

本账号专门用于发表“转载资料”以及读者的投稿

发表评论

电子邮件地址不会被公开。 必填项已用*标注