跳到主要内容

du

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

补充说明

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

fdisk(查看磁盘分区)

语法

du [选项][文件]

选项

  • -a, --all: 显示目录中个别文件的大小。
  • -B, --block-size=大小: 使用指定字节数的块
  • -b, --bytes: 显示目录或文件大小时,以byte为单位。
  • -c, --total: 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
  • -D, --dereference-args: 显示指定符号链接的源文件大小。
  • -H, --si: 与-h参数相同,但是K,M,G是以1000为换算单位。
  • -h, --human-readable: 以K,M,G为单位,提高信息的可读性。
  • -k, --kilobytes: 以KB(1024bytes)为单位输出。
  • -l, --count-links: 重复计算硬件链接的文件。
  • -m, --megabytes: 以MB为单位输出。
  • -L<符号链接>, --dereference<符号链接>: 显示选项中所指定符号链接的源文件大小。
  • -P, --no-dereference: 不跟随任何符号链接(默认)
  • -0, --null: 将每个空行视作0 字节而非换行符
  • -S, --separate-dirs: 显示个别目录的大小时,并不含其子目录的大小。
  • -s, --summarize: 仅显示总计,只列出最后加总的值。
  • -x, --one-file-xystem: 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
  • -X<文件>, --exclude-from=<文件>: 在<文件>指定目录或文件。
  • --apparent-size: 显示表面用量,而并非是磁盘用量;虽然表面用量通常会小一些,但有时它会因为稀疏文件间的"洞"、内部碎片、非直接引用的块等原因而变大。
  • --files0-from=F: 计算文件F中以NUL结尾的文件名对应占用的磁盘空间如果F的值是"-",则从标准输入读入文件名
  • --exclude=<目录或文件>: 略过指定的目录或文件。
  • --max-depth=N: 显示目录总计(与--all 一起使用计算文件)当N为指定数值时计算深度为N,等于0时等同--summarize
  • --si: 类似-h,但在计算时使用1000 为基底而非1024
  • --time: 显示目录或该目录子目录下所有文件的最后修改时间
  • --time=WORD: 显示WORD时间,而非修改时间:atime,access,use,ctime 或status
  • --time-style=样式: 按照指定样式显示时间(样式解释规则同"date"命令):full-iso,long-iso,iso,+FORMAT
  • --help: 显示此帮助信息并退出
  • --version: 显示版本信息并退出

实例

文件从大到小排序

ubuntu@VM-0-14-ubuntu:~/git-work/linux-command$ du -sh * |sort -rh
2.9M command
1.9M assets
148K template
72K package-lock.json
52K dist
28K build
16K README.md
4.0K renovate.json
4.0K package.json
4.0K LICENSE

只显示当前目录下子目录的大小。

ubuntu@VM-0-14-ubuntu:~/git-work/linux-command$ du -sh ./*/
1.9M ./assets/
28K ./build/
2.9M ./command/
52K ./dist/
148K ./template/

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

ubuntu@VM-0-14-ubuntu:~/git-work/linux-command/assets$ du ./*
144 ./alfred.png
452 ./chrome-extensions.gif
4 ./dash-icon.png
1312 ./Linux.gif
16 ./qr.png

只显示总和的大小:

ubuntu@VM-0-14-ubuntu:~/git-work/linux-command/assets$ du -s .
1932 .

显示总和的大小且易读:

ubuntu@VM-0-14-ubuntu:~/git-work/linux-command/assets$ du -sh .
1.9M .