du
来介绍一点很土但是很实用的东西吧,今天聊聊 du。
du 是用来查看文件、文件系统大小的工具。在我使用中,发现一些比较老的资料给出的参数解释已经和现在的du有所差异。比如这一篇。
下面来看看 du 的详细用法:
一、du
直接执行 du 命令,将显示当前目录的大小。在shell中你会看到每个目录(注意是目录)的大小被列了出来。最后一行将显示整个目录的大小。此时,显示的大小单位为KB。
du
…………
…………
32 ./.config/autostart
8 ./.config/gtk-2.0
44 ./.config
48 ./.metacity/sessions
52 ./.metacity
8 ./.chewing
4 ./.xinput.d
4 ./.macromedia/Flash_Player/#SharedObjects/6UX6V2DF
8 ./.macromedia/Flash_Player/#SharedObjects
8 ./.macromedia/Flash_Player/macromedia.com/support/flashplayer/sys
12 ./.macromedia/Flash_Player/macromedia.com/support/flashplayer
16 ./.macromedia/Flash_Player/macromedia.com/support
20 ./.macromedia/Flash_Player/macromedia.com
32 ./.macromedia/Flash_Player
36 ./.macromedia
223064 .
二、-h
h 参数将让你的 du 输出信息变得易读。他会显示MB、GB,它会选择当前最合适的大小单位。这个参数几乎是必选的。
du -h
…………
…………
8.0K ./.macromedia/Flash_Player/macromedia.com/support/flashplayer/sys
12K ./.macromedia/Flash_Player/macromedia.com/support/flashplayer
16K ./.macromedia/Flash_Player/macromedia.com/support
20K ./.macromedia/Flash_Player/macromedia.com
32K ./.macromedia/Flash_Player
36K ./.macromedia
218M .
如果大小已经达到G的单位,它就以G显示。
三、-s
s 参数将仅显示整个文件夹的大小,而不会将文件下子目录的大小再在shell中例一遍。
root@latteye-desktop:~# du -hs
218M .
root@latteye-desktop:~#
四、-a
键盘上a和s靠在一起,而起到的作用反而相反。a 参数将在shell中输出每个文件的大小(注意是每个文件,而不是文件夹。)
五、-X
排除某种文件(当然可以使用正则表达式)。
也可以使用 –exclude-from=FILE 的格式。
六、-b
以字节单位输出:
root@latteye-desktop:~# du -sb
212351623 .
root@latteye-desktop:~#
七、–si
使用 si 参数时一定要用 “–”,si 参数将统计单位定制为“1000”,而不是传统的“1024”—没办法,那些硬盘厂商都用 1000 为单位算,逼得 du 也要又这个功能。
八、-m
其实有了 -h 之后很少用 -m了, -m就是按照兆进行计算。
九、 –max-depth
指定最深追述几层目录。
十、-x
统计时排除不同文件系统的文件。
great article!