du查看某个文件或目录占用磁盘空间的大小

Posted lisen10

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了du查看某个文件或目录占用磁盘空间的大小相关的知识,希望对你有一定的参考价值。

一、du的功能:`du` reports the amount of disk space used by the specified files and for each subdirectory (of directory arguments). with no arguments,`du` reports the disk space for the current directory。

  很明显,与df不同,它用来查看文件或目录所占用的磁盘空间的大小。

  二、du常用的选项:

  -h:以人类可读的方式显示(表示以恰当的K/M/G单位展示)

  -a:显示目录占用的磁盘空间大小,还要显示其下目录和文件占用磁盘空间的大小

  -s:(summarize)显示目录占用的磁盘空间大小,不要显示其下子目录和文件占用的磁盘空间大小(即算总和)

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

  --apparent-size:显示目录或文件自身的大小

  -l :统计硬链接占用磁盘空间的大小

  -L:统计符号链接所指向的文件占用的磁盘空间大小

  一、du -h:这个就不多说了。

  二、du -a:使用此选项时,显示目录和目录下子目录和文件占用磁盘空间的大小。

 

常用的命令

du -sh [指定文件或目录]: 查看当前目录总共占的容量。而不单独列出各子项占用的容量 

du -lh --max-depth=1 : 查看当前目录下一级子文件和子目录占用的磁盘容量。--max-depth 选项控制深度(从0、1...开始)

 

示例:

1. 

du -sh *

技术图片

 

2.

du -ch *.tar.gz

技术图片

-c选项,是 --total 的缩写形式,它表示的是针对输出的各个对象来计算其磁盘使用量的总和

 

3.

du -lh --max-depth=1

技术图片

当--max-depth设定为0时, 只显示当前文件夹总大小

可见, --max-depth=0的作用, 相当于-s

 

du和ls的区别

  • du 展示的是磁盘空间占用量。
  • ls 展示的是文件内容的大小。

同时, du 和 ls 针对同一个文件,展示的大小是不一样的  (抽象说:磁盘占用=内容+包装)

因为大部分文件系统规定:

  1. 一个数据块中最多存放一个文件的内容,当没存满时,剩余的空间不得被其他文件使用。
  2. 当一个文件的内容较大时,则可以存储到多个数据块中。

 

以上是关于du查看某个文件或目录占用磁盘空间的大小的主要内容,如果未能解决你的问题,请参考以下文章

du查看某个文件或目录占用磁盘空间的大小

[转帖]linux下使用 du查看某个文件或目录占用磁盘空间的大小

linux查看文件夹大小

ubuntu 查看占用文件空间大小

linux如何查看系统占用磁盘空间最大的文件及让文件按大小排序

查看磁盘空间和目录大小的命令