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

Posted 成长日记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每天一个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:显示目录或者文件所占空间

[email protected]:/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:显示指定文件所占空间

[email protected]:~/下载$ du cloudmusicsetup_2.2.3.195673.exe 
33444   cloudmusicsetup_2.2.3.195673.exe
[email protected]:~/下载$ 

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

[email protected]:~$ du 下载/
33448   下载/

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

[email protected]:/home/test_du# du test_file01.test test_file02.test 
33444   test_file01.test
33444   test_file02.test
[email protected]:/home/test_du# 

5:只显示总和的大小

[email protected]:/home/test_du# du -s
133780  .
[email protected]:/home/test_du# 

6:方便阅读的格式显示

[email protected]:/# 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:文件和目录都显示

[email protected]:/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/
[email protected]:/home#

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

[email protected]:/home/test_du# du -c test_file01.test test_file02.test 
33444   test_file01.test
33444   test_file02.test
66888   总用量
[email protected]:/home/test_du# 

9:按照空间大小排序

[email protected]:/home/test_du# du|sort -nr|more
167236  .
33448   ./test_du01
4   ./test_du03
4   ./test_du02
[email protected]:/home/test_du# 

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

[email protected]:/home/test_du# du -h  --max-depth=1
33M ./test_du01
4.0K    ./test_du02
4.0K    ./test_du03
164M    .
[email protected]:/home/test_du#

以上是关于每天一个Linux命令(03):du命令的主要内容,如果未能解决你的问题,请参考以下文章

每天一个linux命令:du命令

每天一个linux命令:du 命令

每天学一个 Linux 命令(46):du

每天一个linux命令(33)--du命令

每天一个linux命令du

每天一个Linux命令-du df