【linux命令讲解大全】104.Linux du命令详解及用法示例

2024-03-02 13:51:07 浏览数 (1)

du命令

du命令用于显示每个文件和目录的磁盘使用空间。

补充说明

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

语法

代码语言:javascript复制
du [选项] [文件]

选项

  • -a, --all:显示目录中个别文件的大小。
  • -B, --block-size=大小:使用指定字节数的块。
  • -b, --bytes:显示目录或文件大小时,以字节为单位。
  • -c, --total:除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
  • -D, --dereference-args:显示指定符号链接的源文件大小。
  • -H, --si:与-h参数相同,但K、M、G是以1000为换算单位。
  • -h, --human-readable:以K、M、G为单位,提高信息的可读性。
  • -k, --kilobytes:以KB(1024字节)为单位输出。
  • -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:显示版本信息并退出。

实例

文件从大到小排序
代码语言:javascript复制
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
只显示当前目录下子目录的大小
代码语言:javascript复制
ubuntu@VM-0-14-ubuntu:~/git-work/linux-command$ du -sh ./*/
1.9M    ./assets/
28K     ./build/
2.9M    ./command/
52K     ./dist/
148K    ./template/
查看指定目录下文件所占的空间
代码语言:javascript复制
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
只显示总和的大小
代码语言:javascript复制
ubuntu@VM-0-14-ubuntu:~/git-work/linux-command/assets$ du -s .
1932    .
显示总和的大小且易读
代码语言:javascript复制
ubuntu@VM-0-14-ubuntu:~/git-work/linux-command/assets$ du -sh .
1.9M    .

0 人点赞