掌握Linux du命令:高效查看文件和目录大小

今天我们在生产环境中的服务器上收到了有关/var磁盘目录使用率较高的警报。为了解决这一问题,我们进行了/var目录下一些大文件的清理和转移操作。在查找那些占用磁盘空间较多的文件时,我们频繁使用了du命令。在Linux系统中,du命令是一款功能强大且实用的工具,可用于查看文件和目录的磁盘使用情况。本文将深入探讨du命令的使用方法和一些常见选项,以协助您更全面地理解和有效地管理系统中的存储空间。

linux-du.jpg

du命令简介

du命令是Disk Usage的缩写,用于显示文件和目录的磁盘使用情况。通过du命令,你可以快速了解哪些文件或目录占用了大量的存储空间,从而更好地进行磁盘管理。

基本语法

du命令的基本语法为:

css 复制代码
du [选项] [文件或目录]

常用选项

  • -h, --human-readable: 以易读的格式显示文件和目录的大小,例如KB、MB、GB等。
  • -s, --summarize: 仅显示总的磁盘使用情况,不显示每个子目录的详细信息。
  • -c, --total: 在最后一行显示总的磁盘使用情况,包括所有指定的文件或目录。
  • --max-depth=N选项: 你可以限制显示的目录深度,只显示指定深度内的信息。

实例演示

  • 查看当前目录磁盘使用情况
bash 复制代码
du -h

这将会以易读的格式显示磁盘使用情况,方便阅读。

_20240205224930.jpg

  • 显示总的磁盘使用情况
bash 复制代码
du -ch

使用-c选项,你可以在输出的最后一行看到总的磁盘使用情况,包括所有子目录。

_20240205225242.jpg

  • 查看当前目录下的文件或文件夹的使用情况
bash 复制代码
du -sh *

_20240205225423.jpg

  • 查看当前目录下的所有文件夹的使用情况
ini 复制代码
du -h --max-depth=1

du命令默认显示所有子目录的磁盘使用情况。如果想要只显示当前目录的情况,可以使用 --max-depth=1 选项。

_20240205225624.jpg

  • 查找最大的目录

结合sort命令,你可以找到目录中占用空间最大的目录:

bash 复制代码
du -h | sort -rh | head -n 5

这将显示目录中占用空间最大的5个目录。

_20240205230222.jpg

  • 排除特定文件或目录

有时候,你可能希望排除某些文件或目录不计算在磁盘使用中。这可以通过--exclude选项来实现。例如,排除所有.yml文件:

ini 复制代码
du -sh * --exclude='*.yml'

_20240205231846.jpg

  • 监控目录变化

可以结合watch命令,实时监控目录的变化:

bash 复制代码
watch -n 1 du -sh *

_20240205232039.jpg

总结

du命令是Linux系统中一个强大的磁盘管理工具,通过灵活使用它的选项,你可以更好地了解和控制系统中文件和目录的磁盘使用情况。以上介绍的一些技巧和案例只是冰山一角,深入学习du命令将为你在系统管理中提供更多便利。希望这篇文章对你有所帮助!

相关推荐
独行soc33 分钟前
#渗透测试#批量漏洞挖掘#HSC Mailinspector 任意文件读取漏洞(CVE-2024-34470)
linux·科技·安全·网络安全·面试·渗透测试
BD_Marathon37 分钟前
Ubuntu下Tomcat的配置
linux·ubuntu·tomcat
饥饿的半导体1 小时前
Linux快速入门
linux·运维
BD_Marathon1 小时前
Ubuntu:Tomcat里面的catalina.sh
linux·ubuntu·tomcat
BD_Marathon1 小时前
设置LInux环境变量的方法和区别_Ubuntu/Centos
linux·ubuntu·centos
Me4神秘1 小时前
Linux国产与国外进度对垒
linux·服务器·安全
zhaowangji2 小时前
ubuntu 20.04 安装中文输入法 (sougou pin yin)
linux·ubuntu
两斤半2 小时前
Debian TTY环境乱码
linux·debian
还是奇怪3 小时前
Linux - 安全排查 2
linux·运维·安全
tan77º5 小时前
【Linux网络编程】Socket - UDP
linux·服务器·网络·c++·udp