du (Unix)
du
(disk usage的缩写,磁盘使用情况)是一个标准Unix程序,用于估量文件或文件夹的磁盘使用情况。
历史
du
工具首次出现在AT&T Unix的第一版中。
规范
默认情况下,单一UNIX规范规定,du
显示当前目录每个文件与目录的被分配磁盘空间的情况。链接文件将会显示其本身大小而非其链接对象;目录则会显示其内容的大小。
由于du
只反映磁盘分配情况而非实际文件大小,所以如果文件被删除后磁盘未被释放,其显示的数字会与df报告的数字有所不同。
用法
du
可以带一个参数,即指定一个路径来工作;如果没有指定,则使用当前目录。SUS指定了du
有以下这些选项:
- -a,显示所有的文件和目录,而不仅仅显示目录。
- -H,计算命令行中指定链接对象的磁盘使用情况。
- -k,将大小除以1024字节,而非512字节显示。
- -L,计算任意链接对象的使用情况。
- -s,仅汇报当前目录总计的磁盘使用情况,而不显示每一个文件。
- -x,仅遍历指定路径所在设备上的文件与目录。
其他Unix和类Unix操作系统可能提供额外的选项。例如,BSD与GNU的du
规定了一个-h选项,把磁盘使用情况的大小加上单位后缀,显示为一个用户更容易理解的形式。(如:10MB)
示例
KB单位的目录总大小:
$ du -sk *
152304 directoryOne
1856548 directoryTwo
更易读的目录总大小格式(Byte、KB、MB、GB、TB、PB):
$ du -sh *
149M directoryOne
1.8G directoryTwo
当前目录下包含隐藏文件,子目录与文件的磁盘使用情况(从小到大排序):
$ du -sk .[!.]* *| sort -n
当前目录下包含隐藏文件,子目录与文件的磁盘使用情况(从大到小排序):
$ du -sk .[!.]* *| sort -nr
显示深度为1的目录大小及其总和
$ du -d 1 -c -h
参考
外部链接
使用手册
- du(页面存档备份,存于互联网档案馆) — GNU coreutils中的使用手册
- du — OpenBSD中的使用手册
- du(页面存档备份,存于互联网档案馆) — Dragonflybsd中的使用手册
其他
- Disk space-related utilities at Freshmeat.net