Linux系统目录大小通过du命令获取实例

 更新时间:2020年11月30日 15:21:41   作者:良许  
在本篇文章里小编给大家整理的是一篇关于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命令获取实例的文章就介绍到这了,更多相关用du命令获取Linux系统目录大小内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Zabbix基于snmp实现监控linux主机

    Zabbix基于snmp实现监控linux主机

    这篇文章主要介绍了Zabbix基于snmp实现监控linux主机,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • Ubuntu 16.04下无法安装.deb的解决方法

    Ubuntu 16.04下无法安装.deb的解决方法

    这篇文章主要给大家介绍了关于在Ubuntu 16.04下无法安装.deb的解决方法,文中通过图文介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-07-07
  • linux挂载新磁盘后原数据文件不见的解决办法

    linux挂载新磁盘后原数据文件不见的解决办法

    linux挂载新磁盘后原数据文件不见了,丢失了吗,没有,这篇文章就教你找回解决办法,文章中有详细的操作步骤,有不会找的小伙伴可以参考阅读本文
    2023-08-08
  • 解决nginx/apache静态资源跨域访问问题详解

    解决nginx/apache静态资源跨域访问问题详解

    有时为了优化网站访问速度,会给一些静态资源配置cdn加速,但是有时候会出现跨域访问的问题,在nginx和apache服务中可进行如下配置
    2018-10-10
  • Ubuntu 16.04/18.04 安装Pycharm及Ipython的教程

    Ubuntu 16.04/18.04 安装Pycharm及Ipython的教程

    这篇文章主要介绍了Ubuntu 16.04/18.04 安装Pycharm及Ipython的教程,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • linux下制作ISO文件

    linux下制作ISO文件

    本文给大家分享的是在linux系统中制作ISO文件的2种方法,非常简单实用,有需要的小伙伴可以参考下
    2018-04-04
  • Linux动态启用/禁用超线程技术的方法详解

    Linux动态启用/禁用超线程技术的方法详解

    这篇文章主要给大家介绍了关于Linux动态启用/禁用超线程技术的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Linux系统具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • linux查看服务器开放的端口和启用的端口多种方式

    linux查看服务器开放的端口和启用的端口多种方式

    Nmap可以扫描网络中的处于活动状态的主机、开放端口、操作系统版本和服务检测以及执行隐匿方式的信息扫描,这篇文章主要介绍了linux查看服务器开放的端口和启用的端口五种方式,需要的朋友可以参考下
    2022-08-08
  • Linux如何实现给/根目录扩容

    Linux如何实现给/根目录扩容

    这篇文章主要介绍了Linux如何实现给/根目录扩容问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • Linux系统关机命令之间的区别及用法详解

    Linux系统关机命令之间的区别及用法详解

    在本篇文章里小编给大家整理了一篇关于Linux系统关机命令之间的区别及用法详解内容,有需要的朋友们参考学习下。
    2020-12-12

最新评论