linux命令__du

  • linux命令__du已关闭评论
  • 184 次浏览
  • A+
所属分类:linux技术
摘要

Linux du (英文全拼:disk usage)命令用于显示目录或文件的大小。du 会显示指定的目录或文件所占用的磁盘空间。


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 .... 

还可以指定某个文件查看大小

linux命令__du

  1. -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 

    会递归显示每个文件的大小

  2. -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 

    以字节为单位显示

  3. -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 
  4. -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	. 

    显示具体的单位

  5. -s

    [root@honey-master honeypot-web]# du -sh 26M	. 

    会显示整个目录的大小,也可以指定目录

    linux命令__du

    也可以显示指定目录下每个文件或目录的容量大小

    [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 
  6. --max-depth

    linux命令__du

    linux命令__du

  7. -M

    linux命令__du

    以MB为单位

  8. du -sh * --time

    linux命令__du

  9. du -sh * | sort -rh

    linux命令__du