Linux下列出所有子目录及磁盘占用情况[转]

Linux下列出所有子目录及磁盘占用情况[转]
原文地址: http://www.blogjava.net/kuuyee/archive/2011/04/25/348985.html 

今天 Jenkins (以前叫Hudson)CI服务器突然挂了,排查了半天发现磁盘已经100%,真后悔当初没把磁盘设大点,其实可以用LVM调整一下,但是心里还是没底,怕把数据都丢失了,决定以后再调整磁盘分配。目前先吧Jenkins下没用的项目都干掉,可以腾出很多空间。

我们都知道使用 du 命令可以查看目录,例如查看 /home/kuuyee 目录占用磁盘空间大小可以使用下面的命令:
1 root@pm - ubuntu: ~ #  du /home/kuuyee -sh               
2 333M     / home / kuuyee

但是有个问题,我的Jenkins目录下有上百个构建项目,一个一个的差看目录占用情况太麻烦了,google了一下找到一个办法:
1 root@pm - ubuntu: ~ #  du /home --max-depth=1 -h
2 125M     / home / linux
3 333M     / home / kuuyee
4 457M     / home

这样的话就吧所有的子目录的磁盘占用情况都列出来了!这里的 --max-depth 参数代表着要列出目录的深度,如果要列出两级目录就设置为 2 ,以此类推。
如果想吧结果输出到文件里可以这样:
1 root@pm - ubuntu: ~ #  du /home --max-depth=1 -h > disk_status.txt

下面给出du命令的用法及参数说明:

用法:du [选项]… [文件]…
或:du [选项]… –files0-from=F
总结每个<文件>的磁盘用量,目录则取总用量。

参数含义如下:
-s 对每个Names参数只给出占用的数据块总数。
-a 递归地显示指定目录中各文件及子孙目录中各文件占用的数据块数。若既不指定-s,也不指定-a,则只显示Names中的每一个目录及其中的各子目录所占的磁盘块数。
-b 以字节为单位列出磁盘空间使用情况(系统缺省以 k 字节为单位)。
-k 以1024字节为单位列出磁盘空间使用情况。
-c 最后再加上一个总计(系统缺省设置)。
-l 计算所有的文件大小。

你可能感兴趣的:(Linux下列出所有子目录及磁盘占用情况[转])