这篇文章将为大家详细讲解有关怎么在Linux系统中利用du命令获取系统目录,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
使用过 Linux 系统的小伙伴都知道应该都知道, Linux 系统下的 ls 命令通常被我们用来查看文件目录的内容,但是不知道大家有没有细心留意,ls 命令所显示出来的每一个目录的大小竟然都只有 4 KB ?
$ ls -lh | grep ^d
drwxr-xr-x 3 alvin alvin 4.0K Aug 2 13:57 Bank_Details
drwxr-xr-x 2 alvin alvin 4.0K Mar 15 2019 alvin
drwxr-xr-x 6 alvin alvin 4.0K Feb 16 2019 drive-alvin
drwxr-xr-x 13 alvin alvin 4.0K Jan 6 2019 drive-mageshm
drwxr-xr-x 15 alvin alvin 4.0K Sep 29 21:32 Thanu_Photos
其实啊,这是因为 Linux 下一切皆文件,相信大家都听过这句话,所以你看到的 4 KB 只是用于存储目录元信息的文件大小而已,并不是我们通常意义上的目录大小。那么问题来了,如何去获取到文件目录的实际大小呢?别急,Linux 下的 du 命令可以帮到你。
du 是英文 disk usage 的缩写,代表磁盘使用率,它是一个标准的 Unix 程序,用于估算当前工作目录中文件空间的使用情况。
下面将以 /home/alvin/Documents 为例,来介绍 du 命令的使用。
$ du -hs /home/alvin/Documents
or
$ du -h --max-depth=0 /home/alvin/Documents/
20G /home/alvin/Documents
上面两种方式都可以算出目标目录的总大小,其中:
-h 表示显示成 K、M、G 等大小格式
-s 表示显示总和
--max-depth=N 表示目录级别为 N
将 -s 选项去掉,不进行统计总和,就能显示每一个目录的大小了,以下仅显示前 20 条:
$ du -h /home/alvin/Documents/ | sort -rh | head -20
20G /home/alvin/Documents/
9.6G /home/alvin/Documents/drive-alvin
6.3G /home/alvin/Documents/Thanu_Photos
5.3G /home/alvin/Documents/Thanu_Photos/Camera
5.3G /home/alvin/Documents/drive-alvin/Thanu-videos
3.2G /home/alvin/Documents/drive-mageshm
2.3G /home/alvin/Documents/drive-alvin/Thanu-Photos
2.2G /home/alvin/Documents/drive-alvin/Thanu-photos-by-month
916M /home/alvin/Documents/drive-mageshm/Tanisha
454M /home/alvin/Documents/drive-mageshm/2g-backup
415M /home/alvin/Documents/Thanu_Photos/WhatsApp Video
300M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/Jan-2017
288M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/Oct-2017
226M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/Sep-2017
219M /home/alvin/Documents/Thanu_Photos/WhatsApp Documents
213M /home/alvin/Documents/drive-mageshm/photos
163M /home/alvin/Documents/Thanu_Photos/WhatsApp Video/Sent
161M /home/alvin/Documents/Thanu_Photos/WhatsApp Images
154M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/June-2017
150M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/Nov-2016
结合通配符 * 的使用,可以实现显示出指定目录下的文件和目录的大小信息的效果:
$ du -hs /home/alvin/Documents/* | sort -rh | head -10
9.6G /home/alvin/Documents/drive-alvin
6.3G /home/alvin/Documents/Thanu_Photos
3.2G /home/alvin/Documents/drive-mageshm
756K /home/alvin/Documents/Bank_Details
272K /home/alvin/Documents/user-friendly-zorin-os-15-has-been-released-TouchInterface1.png
172K /home/alvin/Documents/user-friendly-zorin-os-15-has-been-released-NightLight.png
164K /home/alvin/Documents/ConfigServer Security and Firewall (csf) Cheat Sheet.pdf
132K /home/alvin/Documents/user-friendly-zorin-os-15-has-been-released-Todo.png
112K /home/alvin/Documents/user-friendly-zorin-os-15-has-been-released-ZorinAutoTheme.png
96K /home/alvin/Documents/distro-info.xlsx
使用 -S 选项,以排除子目录的形式来统计大小:
$ du -hS /home/alvin/Documents/ | sort -rh | head -20
5.3G /home/alvin/Documents/Thanu_Photos/Camera
5.3G /home/alvin/Documents/drive-alvin/Thanu-videos
2.3G /home/alvin/Documents/drive-alvin/Thanu-Photos
1.5G /home/alvin/Documents/drive-mageshm
831M /home/alvin/Documents/drive-mageshm/Tanisha
454M /home/alvin/Documents/drive-mageshm/2g-backup
300M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/Jan-2017
288M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/Oct-2017
253M /home/alvin/Documents/Thanu_Photos/WhatsApp Video
226M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/Sep-2017
219M /home/alvin/Documents/Thanu_Photos/WhatsApp Documents
213M /home/alvin/Documents/drive-mageshm/photos
163M /home/alvin/Documents/Thanu_Photos/WhatsApp Video/Sent
154M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/June-2017
150M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/Nov-2016
127M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/Dec-2016
100M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/Oct-2016
94M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/Nov-2017
92M /home/alvin/Documents/Thanu_Photos/WhatsApp Images
90M /home/alvin/Documents/drive-alvin/Thanu-photos-by-month/Dec-2017
这个就很简单了,将 max-depth 设定为 1 就可以了:
$ du -h --max-depth=1 /home/alvin/Documents/
3.2G /home/alvin/Documents/drive-mageshm
4.0K /home/alvin/Documents/alvin
756K /home/alvin/Documents/Bank_Details
9.6G /home/alvin/Documents/drive-alvin
6.3G /home/alvin/Documents/Thanu_Photos
20G /home/alvin/Documents/
使用 -c 选项能够对结果进行统计,可以看到,指定目录下的文件和目录的大小的总和是 20 G,这和上面第一条命令中所得出的 /home/alvin/Documents/ 的大小 20 G 是一致的:
$ du -hsc /home/alvin/Documents/* | sort -rh | head -10
20G total
9.6G /home/alvin/Documents/drive-alvin
6.3G /home/alvin/Documents/Thanu_Photos
3.2G /home/alvin/Documents/drive-mageshm
756K /home/alvin/Documents/Bank_Details
272K /home/alvin/Documents/user-friendly-zorin-os-15-has-been-released-TouchInterface1.png
172K /home/alvin/Documents/user-friendly-zorin-os-15-has-been-released-NightLight.png
164K /home/alvin/Documents/ConfigServer Security and Firewall (csf) Cheat Sheet.pdf
132K /home/alvin/Documents/user-friendly-zorin-os-15-has-been-released-Todo.png
112K /home/alvin/Documents/user-friendly-zorin-os-15-has-been-released-ZorinAutoTheme.png
关于怎么在Linux系统中利用du命令获取系统目录就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。