栏目分类
发布日期:2025-02-04 19:19 点击次数:114
du(Disk Usage)命令用于显示目录和文件的磁盘使用情况。它可以帮助我们查看文件或目录占用了多少磁盘空间,并且支持按大小排序,帮助我们找到占用空间较大的文件或目录。基本用法:du [OPTION] [FILE]...OPTION:表示 du 的选项,用来定制输出格式和行为。-h:以可读性更强的格式显示大小(即自动转换为 K、M、G 等单位)。-s:仅显示指定目录或文件的总大小-a:列出目录下所有文件和子目录的大小,而不仅仅是目录。-d N:递归显示深度为 N 的目录大小。--max-depth=N:与 -d 类似,限制显示的目录深度。--exclude=PATTERN:排除指定模式的文件或目录。例如,排除所有 .log 文件(du --exclude="*.log" -sh /path/to/directory)FILE:指定要查询的文件或目录。如果没有指定,du 会默认显示当前目录的信息。组合命令练习:用于查找当前目录(及其子目录)中占用磁盘空间最多的 10 个文件或目录。du -ah | sort -hr | head -n 10find . -type f -exec du -h {} + | sort -rh | head -n 10解释:find . -type f:递归查找当前目录(./)及其子目录中的所有 文件(排除目录)。-exec du -h {} +:对于每个找到的文件,使用 du -h 显示它的大小。{} 是 find 命令的占位符,代表当前找到的文件路径。+ 会将所有找到的文件一次性传递给 du,避免多次执行 du 命令,从而提高效率。sort -rh:将 du 命令的输出按文件大小从大到小(降序)进行排序。-r 是逆序,-h 是让 sort 按人类可读的格式(如 K、M、G)进行排序。head -n 10:显示排序后前 10 个最大文件。生成环境可以df -Th先确认哪个挂载点磁盘占用多,在确定具体哪个文件占用高。
上一篇:没有了
