du

显示每个文件和目录的磁盘使用空间

补充说明

du命令 也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。

语法

  1. du [选项][文件]

选项

  1. -a或-all 显示目录中个别文件的大小。
  2. -b或-bytes 显示目录或文件大小时,以byte为单位。
  3. -c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
  4. -k或--kilobytes KB(1024bytes)为单位输出。
  5. -m或--megabytes MB为单位输出。
  6. -s或--summarize 仅显示总计,只列出最后加总的值。
  7. -h或--human-readable KMG为单位,提高信息的可读性。
  8. -x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
  9. -L<符号链接>或--dereference<符号链接> 显示选项中所指定符号链接的源文件大小。
  10. -S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。
  11. -X<文件>或--exclude-from=<文件> 在<文件>指定目录或文件。
  12. --exclude=<目录或文件> 略过指定的目录或文件。
  13. -D或--dereference-args 显示指定符号链接的源文件大小。
  14. -H或--si 与-h参数相同,但是KMG是以1000为换算单位。
  15. -l或--count-links 重复计算硬件链接的文件。

实例

显示目录或者文件所占空间:

  1. root@localhost [test]# du
  2. 608 ./test6
  3. 308 ./test4
  4. 4 ./scf/lib
  5. 4 ./scf/service/deploy/product
  6. 4 ./scf/service/deploy/info
  7. 12 ./scf/service/deploy
  8. 16 ./scf/service
  9. 4 ./scf/doc
  10. 4 ./scf/bin
  11. 32 ./scf
  12. 8 ./test3
  13. 1288 .

只显示当前目录下面的子目录的目录大小和当前目录的总的大小,最下面的1288为当前目录的总大小

显示指定文件所占空间:

  1. [root@localhost test]# du log2012.log
  2. 300 log2012.log

查看指定目录的所占空间:

  1. [root@localhost test]# du scf
  2. 4 scf/lib
  3. 4 scf/service/deploy/product
  4. 4 scf/service/deploy/info
  5. 12 scf/service/deploy
  6. 16 scf/service
  7. 4 scf/doc
  8. 4 scf/bin
  9. 32 scf

显示多个文件所占空间:

  1. [root@localhost test]# du log30.tar.gz log31.tar.gz
  2. 4 log30.tar.gz
  3. 4 log31.tar.gz

只显示总和的大小:

  1. [root@localhost test]# du -s
  2. 1288 .
  3. [root@localhost test]# du -s scf
  4. 32 scf
  5. [root@localhost test]# cd ..
  6. [root@localhost soft]# du -s test
  7. 1288 test

显示总和的大小且易读:

  1. du -sh $dir