linuxdu命令前十
linuxdu命令前十详细介绍
在 Linux 中,使用du命令结合管道操作可以列出当前目录下占用磁盘空间最大的前 10 个目录(或文件)。以下是常用命令及解释:
列出当前目录下直接子目录的前 10 大空间占用(按目录汇总)
bash
*
du -sh *:-s:仅显示目录 / 文件的总大小(不递归子目录)。-h:以人类可读格式显示(如 KB、MB、GB)。*:匹配当前目录下的所有非隐藏项目(若需包含隐藏项目,可添加-a或使用.* *)。
sort -rh:-r:逆序排序(从大到小)。-h:按人类可读的数字格式排序(避免将 GB 误判为小于 MB)。
head -n 10:提取前 10 条结果。
若需递归子目录并列出所有文件 / 目录的前 10 大占用
bash
-a:显示所有文件和目录(包括子目录中的项目)。- 结果会包含当前目录下所有层级的文件 / 目录,按单个文件 / 目录的大小排序。
指定目录路径(非当前目录)
若需查看某个特定目录(如/path/to/directory)下的情况,只需将*替换为目录路径:
bash
/path/to/directory/*
输出说明
命令执行后,结果会显示每个目录 / 文件的大小及其名称,例如:
plaintext
4.5G big_directory2.3G another_directory
1.2G large_file.tar.gz
注意事项
- 隐藏文件 / 目录:若需包含隐藏项(以
.开头的文件 / 目录),可添加-a或使用shopt -s dotglob显示隐藏文件后再执行命令。 - 权限问题:若访问受权限限制的目录,会提示错误,需用
sudo提升权限(如sudo du -sh * ...)。 - 性能:目录层级深或文件数量多时,命令执行时间可能较长。
通过以上命令,你可以快速定位磁盘空间占用最大的前 10 个项目,便于清理和优化存储。