一、简介
du(英文全拼:disk usage) 命令用于显示查看目录或文件的大小,会显示指定目录或文件所占用磁盘的空间。
二、语法
用法:du [选项]... [文件]...
或:du [选项]... --files0-from=F
参数选项如下:
[-abcDhHklLmsSxX] [--block-size=size] [--exclude=pattern] [--max-depth=n] [--help] [--version] [目录或文件]
参数说明:
-a或-all 显示目录中个别文件的大小。 -b或-bytes 显示目录或文件大小时,以byte为单位。 -c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。 -D或--dereference-args 显示指定符号连接的源文件大小。 -h或--human-readable 以K,M,G为单位,提高信息的可读性。 -H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。 -k或--kilobytes 以1024 bytes为单位。 -l或--count-links 重复计算硬件连接的文件。 -L<符号连接>或--dereference<符号连接> 显示选项中所指定符号连接的源文件大小。 -m或--megabytes 以1MB为单位。 -s或--summarize 仅显示指定目录或文件的总大小,而不显示其子目录的大小。 -S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。 -x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。 -X<文件>或--exclude-from=<文件> 在<文件>指定目录或文件。 --exclude=<目录或文件> 略过指定的目录或文件。 --max-depth=<目录层数> 超过指定层数的目录后,予以忽略。 --help 显示帮助。 --version 显示版本信息。
三、实战
1、显示目录或者文件所占空间
[root@app01 app]# du1832048 ./soft452 ./jdk/bin28 ./jdk/conf/management4 ./jdk/conf/sdp12 ./jdk/conf/security/policy/limited8 ./jdk/conf/security/policy/unlimited24 ./jdk/conf/security/policy88 ./jdk/conf/security136 ./jdk/conf8 ./jdk/include/linux212 ./jdk/include76668 ./jdk/jmods80 ./jdk/legal/java.base……3690200 .
只显示当前目录下子目录的目录大小和当前目录的总的大小,最下面的3690200为当前目录的总大小。
2、显示指定文件或目录所占空间
[]178908 jdk-17.0.15_linux-x64_bin.tar.gz[]1832048 soft
3、方便阅读的格式显示app目录所占空间情况
[root /]# du -h app1.8G app/soft452K app/jdk/bin28K app/jdk/conf/management4.0K app/jdk/conf/sdp12K app/jdk/conf/security/policy/limited8.0K app/jdk/conf/security/policy/unlimited24K app/jdk/conf/security/policy88K app/jdk/conf/security136K app/jdk/conf8.0K app/jdk/include/linux212K app/jdk/include75M app/jdk/jmods80K app/jdk/legal/java.base……3.6G
app
-h参数以K,M,G为单位,提高信息的可读性。最下面的3.6G为当前目录的总大小。
可以尝试看看du其它参数执行后是一个什么样的效果,这里就不在一一展示了,大家有兴趣的话可以自行尝试。