良许Linux教程网 干货合集 Linux系统命令-du命令详解

Linux系统命令-du命令详解

du和df是由一些差别的,du主要应用于对文件和目录占用磁盘的空间查看,输出指定文件或目录使用的估计磁盘空间量。

如何使用 du 命令

du 命令的一般语法如下:

 du [OPTIONS]... FILE...

如果给定的 FILE 是目录, du 则将汇总该目录中每个文件和子目录的磁盘使用情况。如果未 FILE 指定, du 则将报告当前工作目录的磁盘使用情况。

在没有任何选项 du 的情况下执行时,将以字节为单位显示给定文件或目录及其每个子目录的磁盘使用情况。

 $ du ~/Documents

您还可以将多个文件和目录作为参数传递给 du 命令:

 $ du ~/Documents ~/Pictures ~/.zshrc

如果您运行 du 命令的文件和目录的是您没有权限的文件或目录,则会出现类似 “du: cannot read directory” 的内容。在这种情况下,您需要在命令前加上 sudo 。

du 有很多选项,我们将概述最常用的选项。

-a 选项告诉 du 您报告目录中每个文件的磁盘空间使用情况。

 $ du -a ~/Documents

通常,您希望以人类可读的格式仅显示给定目录占用的空间。为此,请使用该 -h 选项。

例如,要获取 /var/lib 其子目录及其所有子目录的总大小,请运行以下命令:

 $ sudo du -h /var/lib

我们使用了 sudo,因为 /var/lib 目录中的大多数文件和目录都由 root 用户拥有,并且普通用户无法读取。输出看起来像这样:

 ...
 4.0K /var/lib/apt/mirrors/partial
 8.0K /var/lib/apt/mirrors
 205M /var/lib/apt
 2.9G /var/lib/

要仅输出指定目录的总大小,而不输出子目录的总大小,请使用以下 -s 选项:

 $ sudo du -sh /var
 2.9G /var

-c 选项告诉 du 报告总计。当您想要获得两个或更多目录的组合大小时,这非常有用。

 $ sudo du -csh /var/log /var/lib
 1.2G /var/log
 2.9G /var/lib
 4.1G total

如果要显示 n 级子目录的磁盘使用情况,请使用该 --max-depth 选项并指定子目录级别。例如,要获取有关您将使用的第一级目录的报告:

 $ sudo du -h --max-depth=1 /var/lib
 ...
 544K /var/lib/usbutils
 4.0K /var/lib/acpi-support
 205M /var/lib/apt
 2.9G /var/lib

du 实用程序的默认行为是重新获取目录或文件使用的磁盘空间。要查找文件的“表观大小”,请使用 --apparent-size开关。文件的“表观大小”是文件中实际存在的数据量。

 $ sudo du -sh --apparent-size /var/lib
 2.9G /var/lib

du 还允许您使用 shell 模式。例如,要在主目录中获取以 “Do” 开头的所有目录的大小,您将运行:

 $ sudo du -csh ~/Do*
 102M /home/linuxize/Documents
 358M /home/linuxize/Downloads
 460M total

使用 du 与其他命令

du 命令可以与管道的其他命令结合使用。

例如,要打印 /var 目录中的 5 个最大的目录,您可以将输出传递 du 给 sort 命令,以按其大小对目录进行排序,然后将输出通过管道输出到 head 仅打印前5个目录的命令:

 $ sudo du -h /var/ | sort -rh | head -5
 4.6G /var/
 2.9G /var/lib
 2.6G /var/lib/snapd
 1.7G /var/lib/snapd/snaps
 1.2G /var/log/journal/af8ce1d394b844fea8c19ea5c6a9bd09

总结

看完这篇文章,各位小伙伴应该掌握了du命令,大家如果由什么疑问可以在评论区留言或者使用 man du 命令来查看详细介绍。

以上就是良许教程网为各位朋友分享的Linux系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你!

本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部