每天一个Linux命令(03):du命令

du命令

今天找开发定位问题,看到他使用了这个命令,查看文件,之前知道df,所以今天的每天系列把这命令

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

语法

du 【选项】【文件】

选项

-a或-all 显示目录中个别文件的大小。
-b或-bytes 显示目录或文件大小时,以byte为单位。 
-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。 
-k或--kilobytes 以KB(1024bytes)为单位输出。 
-m或--megabytes 以MB为单位输出。 
-s或--summarize 仅显示总计,只列出最后加总的值。 
-h或--human-readable 以K,M,G为单位,提高信息的可读性。 
-x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。 
-L<符号链接>或--dereference<符号链接> 显示选项中所指定符号链接的源文件大小。 
-S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。 
-X<文件>或--exclude-from=<文件> 在<文件>指定目录或文件。 
--exclude=<目录或文件> 略过指定的目录或文件。 
-D或--dereference-args 显示指定符号链接的源文件大小。 
-H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。 
-l或--count-links 重复计算硬件链接的文件。

实例

1:显示目录或者文件所占空间

mrwuzs@mrwuz:/home$ du mrwuzs/
4	mrwuzs/文档
4	mrwuzs/.local/share/nautilus/scripts
8	mrwuzs/.local/share/nautilus
4	mrwuzs/.local/share/unity-settings-daemon
16	mrwuzs/.local/share/icc
8	mrwuzs/.local/share/evolution/calendar/system
4	mrwuzs/.local/share/evolution/calendar/trash
16	mrwuzs/.local/share/evolution/calendar
4	mrwuzs/.local/share/evolution/addressbook/system/photos
32	mrwuzs/.local/share/evolution/addressbook/system
4	mrwuzs/.local/share/evolution/addressbook/trash
40	mrwuzs/.local/share/evolution/addressbook
4	mrwuzs/.local/share/evolution/memos/trash
8	mrwuzs/.local/share/evolution/memos
8	mrwuzs/.local/share/evolution/tasks/system
4	mrwuzs/.local/share/evolution/tasks/trash
-------------------省略-----------------------
44	mrwuzs/.cache/gnome-software/3.20/firmware
48	mrwuzs/.cache/gnome-software/3.20
52	mrwuzs/.cache/gnome-software
8	mrwuzs/.cache/logrotate
8	mrwuzs/.cache/update-manager-core
1468	mrwuzs/.cache
2336	mrwuzs/

说明:

只显示当前目录下面的子目录的目录大小和当前目录的总的大小,最下面的2336为当前目录的总大小

2:显示指定文件所占空间

mrwuzs@mrwuz:~/下载$ du cloudmusicsetup_2.2.3.195673.exe 
33444	cloudmusicsetup_2.2.3.195673.exe
mrwuzs@mrwuz:~/下载$ 

3:查看指定目录的所占空间

mrwuzs@mrwuz:~$ du 下载/
33448	下载/

4:显示多个文件所占空间

root@mrwuz:/home/test_du# du test_file01.test test_file02.test 
33444	test_file01.test
33444	test_file02.test
root@mrwuz:/home/test_du# 

5:只显示总和的大小

root@mrwuz:/home/test_du# du -s
133780	.
root@mrwuz:/home/test_du# 

6:方便阅读的格式显示

root@mrwuz:/# du -h  home/
4.0K	home/mrwuzs/文档
4.0K	home/mrwuzs/.local/share/nautilus/scripts
****省略*****************
8.0K	home/mrwuzs/.cache/logrotate
8.0K	home/mrwuzs/.cache/update-manager-core
47M	home/mrwuzs/.cache
68M	home/mrwuzs
131M	home/test_du
199M	home/

7:文件和目录都显示

root@mrwuz:/home# du -ah test_du/
33M	test_du/test_du01/test_file01.test
33M	test_du/test_du01
33M	test_du/test_file03.test
4.0K	test_du/test_du02
33M	test_du/test_file01.test
4.0K	test_du/test_du03
33M	test_du/test_file02.test
33M	test_du/test_file04.test
164M	test_du/
root@mrwuz:/home#

8:显示几个文件或目录各自占用磁盘空间的大小,还统计它们的总和

root@mrwuz:/home/test_du# du -c test_file01.test test_file02.test 
33444	test_file01.test
33444	test_file02.test
66888	总用量
root@mrwuz:/home/test_du# 

9:按照空间大小排序

root@mrwuz:/home/test_du# du|sort -nr|more
167236	.
33448	./test_du01
4	./test_du03
4	./test_du02
root@mrwuz:/home/test_du# 

10:输出当前目录下各个子目录所使用的空间

root@mrwuz:/home/test_du# du -h  --max-depth=1
33M	./test_du01
4.0K	./test_du02
4.0K	./test_du03
164M	.
root@mrwuz:/home/test_du#
posted @ 2017-12-15 20:52  mrwuzs  阅读(743)  评论(0编辑  收藏  举报