- A+
所属分类:linux技术
du
Linux du (英文全拼:disk usage)命令用于显示目录或文件的大小。
du 会显示指定的目录或文件所占用的磁盘空间。
du命令作用是估计文件系统的磁盘已使用量,常用于查看文件或目录所占磁盘容量。
du命令与df命令不同,df命令是统计磁盘使用情况,详见linux命令详解之df命令。
du命令会直接到文件系统内查找所有文件数据,所以命令执行时会耗费一点儿时间。
在默认情况下,输出结果大小是以KB为单位的。如果想以MB为单位,使用-m参数即可,如果只想知道目录占了多少容量,使用-s参数即可。
参数
-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=<目录层数> 超过指定层数的目录后,予以忽略。
实例
[root@honey-master kafka] du 116 ./bin/windows 256 ./bin 76 ./config 70724 ./libs 3316 ./site-docs 3120 ./logs 77528 .
默认情况下,只统计目录的大小,以KB为单位。如果有多层级目录,也会自动递归搜索。
[root@honey-master lib]# du 104 ./python3.6/site-packages/slip/dbus 168 ./python3.6/site-packages/slip 60 ./python3.6/site-packages/urllib3-1.24.2-py3.6.egg-info 48 ./python3.6/site-packages/procfs/__pycache__ 92 ./python3.6/site-packages/procfs 20 ./python3.6/site-packages/python_linux_procfs-0.6-py3.6.egg-info 84 ./python3.6/site-packages/pyudev/__pycache__ 28 ./python3.6/site-packages/pyudev/_ctypeslib/__pycache__ 56 ./python3.6/site-packages/pyudev/_ctypeslib ....
还可以指定某个文件查看大小
-
-a
[root@honey-master honeypot-web] du -a 572 ./dist/asciinema-player.js 4 ./dist/favicon.ico 20 ./dist/index.html 4 ./dist/css/npm.codemirror~dcae4f2f.74fc96ee.css.gz 4 ./dist/css/chunk-5f9a1b47.9c9f2a0d.css
会递归显示每个文件的大小
-
-b
[root@honey-master honeypot-web] du -ab 583102 ./dist/asciinema-player.js 733 ./dist/favicon.ico 16444 ./dist/index.html 1686 ./dist/css/npm.codemirror~dcae4f2f.74fc96ee.css.gz 732 ./dist/css/chunk-5f9a1b47.9c9f2a0d.css 338 ./dist/css/chunk-5d23d1da.622c3e50.css.gz 5567 ./dist/css/chunk-f0c0d6f6.4ff0a8c2.css.gz
以字节为单位显示
-
-c
[root@honey-master honeypot-web] du -c 1768 ./dist/css 152 ./dist/cast 11184 ./dist/js 1688 ./dist/echartImages 10808 ./dist/img 40 ./dist/fonts 26440 ./dist 26440 . 26440 total
-
-h
[root@honey-master honeypot-web]# du -h 1.8M ./dist/css 152K ./dist/cast 11M ./dist/js 1.7M ./dist/echartImages 11M ./dist/img 40K ./dist/fonts 26M ./dist 26M .
显示具体的单位
-
-s
[root@honey-master honeypot-web]# du -sh 26M .
会显示整个目录的大小,也可以指定目录
也可以显示指定目录下每个文件或目录的容量大小
[root@honey-master ratel] du -sh ./* 0 ./abc 4.0K ./agent.json 108K ./config.cpython-36m-x86_64-linux-gnu.so 20K ./Dorado 8.0K ./encryptcode.py
-
--max-depth
-
-M
以MB为单位
-
du -sh * --time
-
du -sh * | sort -rh