1,两者区别
du,disk usage,是通过搜索文件来计算每个文件的大小,然后累加,du能看到的文件只是一些当前存在的,没有被删除的。他计算的大小就是,当前他认为存在的所有文件大小的累加和。
df,disk free,通过文件系统来快速获取空间大小的信息。当我们删除一个文件的时候,这个文件不是马上就在文件系统当中消失了,而是暂时消失了,当所有程序都不用时,才会根据OS的规则释放掉已经删除的文件。 df记录的是通过文件系统获取到的文件的大小,他比du强的地方就是能够看到已经删除 的文件,而且计算大小的时候,把这一部分的空间也加上了,更精确了。
当文件系统也确定删除了该文件后,这时候du与df就一致了。
df [-ahikHTm] [目录或者文件夹]
参数:
-h : 以交较易识别的方式展示使用量 1111000KB -> XXXMB , 默认以KB的方式显示
-i : 不使用磁盘容量,用inode 的数量来显示
-a : 列出所有的文件系统, 包括系统特有的 /proc 等文件系统
-k : 以KB的容量显示 文件系统 (默认)
-m: 以MB的容量显示 文件系统
-H : 以 1000的进制代替1024的进制方式
-T : 连同该分区的文件系统的名称(ext3)等也列出
示例:
df
df -h
df -ah
df -h [dirname|filename]
===============================================
du [-ahskm] 文件或目录名称
-s : 列出总量而已,而不列出每个个别的目录占用容量 !!!!
-h : 以易读的方式(G/M)显示
-a : 列出所有的文件与目录容量,默认仅统计目录下的文件量
-S: 不包括目录下的总计,与-s 有差别
-k: 以KB列出容量显示
-m: 以MB列出容量显示
示例:
1)查看当前目录以及子目录的大小
root@tech163:/home/htmlfile# du -h
16K ./test
60K ./bbb
84K .
其中 -h 表示使用K,M,G的人性化形式显示。
2)看到当前目录下的bbb目录大小,但不想查看其他目录以及子目录
root@tech163:/home/htmlfile# du -sh bbb
64K /bbb
3)列出当前目录下所有目录和文件的大小
root@tech163:/home/htmlfile# du -ah bbb
4.0K bbb/MySQL.php
4.0K bbb/index.htm
4.0K bbb/p.php
28K bbb/memcache.php
12K bbb/.session.php.swp
4.0K bbb/hello.html
60K bbb
其中-a表示包含目录和文件