使用du、find和ls命令可快速定位大文件:1. du -ah /path | sort -rh | head -10 查找指定目录下最大的10个文件或目录;2. find /path -type f -size +1G 2>/dev/null 查找大于1GB的文件并忽略权限错误;3. ls -lhS 显示当前目录文件按大小降序排列,结合head查看前10个大文件。

在Linux系统中,查看大文件或查找占用空间较大的文件是日常运维和磁盘清理中的常见需求。可以通过命令行工具快速定位这些文件,避免手动浏览浪费时间。
使用 du 命令查找大文件
du(disk usage)命令用于查看文件和目录的磁盘使用情况,适合找出占用空间大的目录或文件。
常用组合:- du -h /path/to/dir:以人类可读的方式(如 MB、GB)显示指定目录下各子目录的大小
- du -ah /path/to/dir:显示所有文件和目录的大小(包含文件)
- du -ah /path/to/dir | sort -rh | head -10:列出该目录下最大的10个文件或目录
例如,查看根目录下哪些目录最大:
du -sh /* | sort -rh | head -10
使用 find 命令直接查找大文件
find 命令可以根据条件搜索文件,比如按大小查找。
常用用法:- find /path/to/search -type f -size +1G:查找大于1GB的文件
- find /home -type f -size +500M:查找/home目录下大于500MB的文件
- find / -type f -size +1G 2>/dev/null:从根目录查找大于1GB的文件,忽略权限错误信息
可以结合 ls 命令显示详细信息:
find /var/log -type f -size +100M -exec ls -lh {} \;
使用 ls 命令查看当前目录大文件
如果只想查看当前目录中较大的文件,ls 配合排序也能快速识别。
- ls -lhS:按文件大小降序显示文件(大文件在前)
- ls -lhS | head -10:显示最大的10个文件
- ls -lhr:按大小升序排列(小文件在前)
结合管道与排序提升效率
将多个命令通过管道组合,能更高效地定位目标文件。
例如:
- find / -type f -size +500M 2>/dev/null | xargs du -h | sort -rh:查找大文件并按大小排序显示
- du -ah ~ | sort -rh | head -20:查看家目录中最大的20个项目
基本上就这些。熟练使用 du、find 和 ls 配合排序,就能快速找到占用空间多的大文件,帮助释放磁盘空间或分析存储情况。不复杂但容易忽略细节,比如单位换算和权限问题,加 2>/dev/null 可避免干扰信息输出。










