【Linux】如何在 Linux 上查找占用空间较大的文件和文件夹

发布于:2025-03-24 ⋅ 阅读:(30) ⋅ 点赞:(0)

如何在 Linux 上查找占用空间较大的文件和文件夹

在日常使用 Linux 的过程中,我们常常需要清理磁盘空间。找出占用空间较大的文件和文件夹是一个重要的步骤。本文将介绍几种方法来查找这些占用空间较大的文件和文件夹。

方法一:使用 dusort 命令

这种方法结合了 dusort 命令,可以快速找到当前目录及其子目录中占用空间较大的前10个文件或文件夹。

# 查找当前目录及其子目录中占用空间较大的前10个文件或文件夹
du -ah . | sort -rh | head -n 10

说明:

  • du -ah .:递归计算当前目录(.)下的所有文件和文件夹的空间占用,-a 表示显示所有文件和文件夹,-h 表示以人类可读的格式显示。
  • sort -rh:按数值大小逆序排序,-r 表示逆序,-h 表示以人类可读的格式排序。
  • head -n 10:显示排序后的前10行结果。

方法二:使用 dufind 命令

如果只想查找文件或文件夹,可以分别使用以下命令。

查找前10个占用空间最大的文件:

find . -type f -exec du -h {} + | sort -rh | head -n 10

说明:

  • find . -type f:查找当前目录(.)及其子目录中的所有文件。
  • -exec du -h {} +:对查找到的每个文件执行 du -h 命令,{} 代表文件名,+ 表示以批处理方式执行。
  • sort -rh | head -n 10:按数值大小逆序排序并显示前10行结果。

查找前10个占用空间最大的文件夹:

du -h --max-depth=1 . | sort -rh | head -n 10

说明:

  • du -h --max-depth=1 .:计算当前目录(.)下的文件夹大小,--max-depth=1 表示只计算当前目录的深度,不递归子目录。
  • sort -rh | head -n 10:按数值大小逆序排序并显示前10行结果。

方法三:使用 ncdu 工具

ncdu 是一个基于 ncurses 的磁盘使用分析工具,可以更加直观地查看文件和文件夹的空间占用情况。

安装 ncdu

不同发行版的安装命令可能有所不同:

sudo apt-get install ncdu   # 对于 Debian/Ubuntu
sudo yum install ncdu       # 对于 CentOS/RHEL
sudo dnf install ncdu       # 对于 Fedora

使用 ncdu

安装完成后,可以运行以下命令启动 ncdu

ncdu /

ncdu 启动后会显示一个交互式界面,允许浏览文件系统并查看每个文件或文件夹的空间占用情况。可以使用箭头键导航,并按 q 退出。