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

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

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

linux-du.jpg

du命令简介

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

基本语法

du命令的基本语法为:

du [选项] [文件或目录]

常用选项

  • -h, --human-readable: 以易读的格式显示文件和目录的大小,例如KB、MB、GB等。

  • -s, --summarize: 仅显示总的磁盘使用情况,不显示每个子目录的详细信息。

  • -c, --total: 在最后一行显示总的磁盘使用情况,包括所有指定的文件或目录。

  • --max-depth=N选项: 你可以限制显示的目录深度,只显示指定深度内的信息。

实例演示

  • 查看当前目录磁盘使用情况
du -h

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

_20240205224930.jpg

  • 显示总的磁盘使用情况
du -ch

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

_20240205225242.jpg

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

_20240205225423.jpg

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

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

_20240205225624.jpg

  • 查找最大的目录

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

du -h | sort -rh | head -n 5

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

_20240205230222.jpg

  • 排除特定文件或目录

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

du -sh * --exclude='*.yml'

_20240205231846.jpg

  • 监控目录变化

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

watch -n 1 du -sh *

_20240205232039.jpg

总结

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

目录
相关文章
|
2天前
|
Linux 网络安全 开发工具
linux 常用命令【编程必备】
linux 常用命令【编程必备】
14 4
|
2天前
|
存储 Linux
Linux文件的上和下,FinalShell文件右键可下文件,先选择root文件夹,然后把他文件往里面拖动,就可以下载了,命令下载,ls -l可以看当前文件目录,sz 文件名可下载,tab补,rz出上
Linux文件的上和下,FinalShell文件右键可下文件,先选择root文件夹,然后把他文件往里面拖动,就可以下载了,命令下载,ls -l可以看当前文件目录,sz 文件名可下载,tab补,rz出上
|
2天前
|
安全 Linux 测试技术
Linux命令setpriv详解
`setpriv` 是Linux下的命令行工具,用于调整进程权限以增强安全性,尤其适用于自动化和非交互式权限切换。它不使用PAM,支持管理能力集、GID/UID及SELinux上下文。例如,`setpriv --reuid=1000 script.sh` 可以以低权限用户运行脚本,而`--selinux-label`可设定SELinux标签。在使用时,应最小化权限、充分测试、保持与其他安全机制的兼容性,并定期审核权限设置。
|
2天前
|
Linux 数据安全/隐私保护
Linux命令setfacl详解
`setfacl`是Linux中用于设置文件访问控制列表的命令,提供比传统权限更细粒度的控制。它允许为特定用户或组添加、修改或删除权限,适用于多用户环境和复杂场景。常用参数包括`-m`(修改规则)、`-x`(删除规则)、`-R`(递归设置)和`-d`(设置默认ACL)。例如,`setfacl -m u:user1:rw- file.txt`给用户`user1`赋予文件`file.txt`的读写权限。记得在使用前确认文件系统支持ACL,并谨慎规划和审查权限设置。
|
2月前
|
Linux
快速上手linux | 一文秒懂Linux各种常用目录命令(上)
快速上手linux | 一文秒懂Linux各种常用目录命令(上)
26 0
|
2月前
|
Ubuntu Linux
linux(三十六)文件和目录相关命令tree
linux(三十六)文件和目录相关命令tree
32 0
|
2月前
|
Linux Shell PHP
linux(十五)文件和目录相关命令-控制台输出命令echo和重定向
linux(十五)文件和目录相关命令-控制台输出命令echo和重定向
94 0
|
2月前
|
Linux
linux(十四)文件和目录相关命令cat和more
linux(十四)文件和目录相关命令cat和more
46 0
|
2月前
|
Linux
linux(十三)文件和目录相关命令rm
linux(十三)文件和目录相关命令rm
42 0
|
2月前
|
安全 Linux
【亮剑】`chattr`是Linux中用于管理文件和目录扩展属性的命令,影响文件系统处理方式
【4月更文挑战第30天】`chattr`是Linux中用于管理文件和目录扩展属性的命令,影响文件系统处理方式。常用属性包括:`a`(追加)、`i`(不可变)、`s`(安全删除)和`S`(同步更新)。通过`chattr [选项] <模式> <文件或目录>`设置属性,如`chattr +i <文件名>`使文件不可变,`-i`移除不可变属性。`lsattr`用于查看属性。注意,只有root用户有权更改属性,不是所有文件系统都支持所有属性,且更改关键文件属性前应备份。`chattr`有助于提升系统安全性和数据保护。