红联Linux门户
Linux帮助

命令du与df

发布时间:2011-04-25 19:18:59来源:红联作者:Guin
[i=s] 本帖最后由 Guin 于 2011-5-18 19:25 编辑 [/i]

/bin/df, /usr/bin/du, /usr/bin/stat

df -- Report filesystem disk space usage

df [option]...[file]...


du -- Estimate file space usage
du与df是完全不一样的东西。df始终是查看文件系统的使用情况。du查看的是指定的文件和目录与其子目录的磁盘使用情况。
du就这两个选项是有意思的:
-S, --separate-dirs do not include size of subdirectories
-s, --summarize display only a total for each argument

建一个空目录,用du查看磁盘使用情况也是有数量的。不过不明白为什么新建一个空目录就占用了磁盘了,还4k之多。查看新建的文件是无使用量的,可见并不计算meta data。

$ du z/ z/foo
4 z/
0 z/foo

大S与小s的区别是这个样子的:大S不把子目录的大小计算到自己头上;
$ du -S z/
4 z/z
4 z/
$ du -s z/
8 z/

stat -- report file or file system status
突然发现stat这个命令很好么,相当于看一个文件的所有相对有用的属性了。原来看文件类型就会用file,看大小,时间信息就会用ls。以后可以用这个了。还可以用-f选项查看文件所在文件系统的信息。
文章评论

共有 45 条评论

  1. Growth兆 于 2011-04-26 09:53:42发表:

    感谢Guin的分享,本贴加入到论坛顶置的Linux应用贴中

  2. Svaurc 于 2011-04-26 08:42:22发表:

    不错,学习了

  3. Guin 于 2011-04-25 23:06:23发表:

    df查的是inode,du查的是block
    ===================
    这么说是便于理解了,不过以我现在的认知:
    df主要只查了superblock,而du去查了inode。

  4. yanyongkg 于 2011-04-25 21:53:37发表:

    这是一个老问题了。
    df查的是inode,du查的是block

  5. 相思爱文 于 2011-04-25 21:21:58发表:

    一个没有文件的文件系统(即分区),也是占已用容量的。