du命令
du命令的英文全称是“Disk Usage”,即用于查看磁盘占用空间的意思。但是与df命令不同的是,du命令是对文件和目录磁盘使用的空间的查看,而不是某个分区。
du 命令 表示 磁盘使用率Disk Usage。这是一个标准的 Unix 程序,用于估计当前工作目录中的文件空间使用情况。
它使用递归方式总结磁盘使用情况,以获取目录及其子目录的大小。
如同我说的那样, 使用 ls 命令时,目录大小仅显示 4KB。参见下面的输出。
常用参数
du参数 |
描述 |
-a |
显示目录中所有文件大小 |
-k |
以KB为单位显示文件大小 |
-m |
以MB为单位显示文件大小 |
-g |
以GB为单位显示文件大小 |
-h |
以易读方式显示文件大小 |
-s |
仅显示总计 |
文档
或者
示例
du -hs 目录:获取目录的总大小
使用以下 du 命令格式获取给定目录的总大小。
在该示例中,我们将得到 /root/blog/ 目录的总大小。
1 2 3
| [root@localhost blog]# du -hs /root/blog/ 93M /root/blog/ [root@localhost blog]#
|
或者:
1 2 3
| [root@localhost blog]# du -h --max-depth=0 /root/blog/ 93M /root/blog/ [root@localhost blog]#
|
参数说明
du命令参数 |
描述 |
-h |
以易读的格式显示大小 (例如 1K 234M 2G) |
-s |
仅显示每个参数的总数 |
–max-depth=N |
目录的打印深度 |
du -h:获取每个目录的大小
使用以下 du 命令格式获取每个目录(包括子目录)的总大小。
在该示例中,我们将获得每个 /home/daygeek/Documents 目录及其子目录的总大小。
1
| du -h /home/daygeek/Documents/ | sort -rh | head -20
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| [root@localhost blog]# pwd /root/blog [root@localhost blog]# du -h |sort -rh|head -20 93M . 66M ./node_modules 7.3M ./.git 7.0M ./.git/objects 5.5M ./.git/objects/pack 5.2M ./node_modules/moment 5.0M ./node_modules/hexo-generator-baidu-sitemap/node_modules 5.0M ./node_modules/hexo-generator-baidu-sitemap 4.9M ./node_modules/lodash 4.4M ./node_modules/core-js 3.4M ./source 3.3M ./source/_posts 3.2M ./node_modules/prismjs 3.0M ./node_modules/hexo-deployer-git/node_modules 3.0M ./node_modules/hexo-deployer-git 3.0M ./node_modules/hexo-abbrlink 2.9M ./node_modules/hexo-generator-sitemap/node_modules 2.9M ./node_modules/hexo-generator-sitemap 2.9M ./node_modules/hexo-abbrlink/node_modules 2.7M ./node_modules/hexo-generator-sitemap/node_modules/highlight.js [root@localhost blog]#
|
du -hs 目录/*:获取每个目录的摘要
使用如下 du 命令格式仅获取每个目录的摘要。
1
| du -hs 目录/* | sort -rh | head -10
|
例如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| [root@localhost blog]# pwd /root/blog [root@localhost blog]# du -hs /root/blog/* | sort -rh | head -10 66M /root/blog/node_modules 14M /root/blog/db.json 3.4M /root/blog/source 2.4M /root/blog/themes 168K /root/blog/package-lock.json 16K /root/blog/scaffolds 4.0K /root/blog/StartWriting.bat 4.0K /root/blog/package.json 4.0K /root/blog/KillBlog.sh 4.0K /root/blog/HexoSTest.bat [root@localhost blog]#
|
du -hS:获取每个目录的不含子目录的大小
使用如下 du 命令格式来展示每个目录的总大小,不包括子目录。
1
| du -hS 目录 | sort -rh | head -20
|
例如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| [root@localhost blog]# du -hS /root/blog/ |sort -rh |head -20 14M /root/blog/ 5.5M /root/blog/.git/objects/pack 3.3M /root/blog/node_modules/lodash 2.4M /root/blog/node_modules/prismjs/components 2.2M /root/blog/node_modules/moment/min 1.7M /root/blog/node_modules/lodash/fp 1.7M /root/blog/node_modules/hexo-generator-sitemap/node_modules/highlight.js/lib/languages 1.7M /root/blog/node_modules/hexo-deployer-git/node_modules/highlight.js/lib/languages 1.7M /root/blog/node_modules/hexo-abbrlink/node_modules/highlight.js/lib/languages 1.5M /root/blog/node_modules/nunjucks/browser 1.5M /root/blog/node_modules/highlight.js/lib/languages 1.2M /root/blog/node_modules/hexo-generator-baidu-sitemap/node_modules/acorn/dist 1.2M /root/blog/node_modules/acorn/dist 916K /root/blog/node_modules/core-js/modules 900K /root/blog/node_modules/moment-timezone/builds 880K /root/blog/node_modules/core-js/library/modules 824K /root/blog/node_modules/core-js/client 740K /root/blog/node_modules/moment/locale 660K /root/blog/node_modules/css/node_modules/source-map/dist 652K /root/blog/node_modules/moment/src/locale [root@localhost blog]#
|
du -h –max-depth=1:仅获取一级子目录的大小
如果要获取 Linux 上给定目录的一级子目录(包括其子目录)的大小,请使用以下命令格式。
1 2 3 4 5 6 7 8
| [root@localhost blog]# du -h --max-depth=1 /root/blog/ 7.3M /root/blog/.git 16K /root/blog/scaffolds 3.4M /root/blog/source 2.4M /root/blog/themes 66M /root/blog/node_modules 93M /root/blog/ [root@localhost blog]#
|
du -hsc:统计
如果要在 du 命令输出中获得总计,请使用以下 du 命令格式。
1
| du -hsc 目录/* | sort -rh | head -10
|
例如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| [root@localhost blog]# du -hsc /root/blog/* | sort -rh 86M 总用量 66M /root/blog/node_modules 14M /root/blog/db.json 3.4M /root/blog/source 2.4M /root/blog/themes 168K /root/blog/package-lock.json 16K /root/blog/scaffolds 4.0K /root/blog/StartWriting.bat 4.0K /root/blog/package.json 4.0K /root/blog/KillBlog.sh 4.0K /root/blog/HexoSTest.bat 4.0K /root/blog/hexos.sh 4.0K /root/blog/HexoS.bat 4.0K /root/blog/HexoD.bat 4.0K /root/blog/FM.properties 4.0K /root/blog/_config.yml [root@localhost blog]#
|
参考资料
https://linux.cn/article-11503-1.html
https://www.yiibai.com/linux/du.html
https://www.runoob.com/linux/linux-comm-du.html
https://www.linuxcool.com/du
可以替代du的一些命令
https://linux.cn/article-10239-1.html