如何在 Linux 中获取消耗大量磁盘空间的“/”文件夹的顶级直接子文件夹

Log*_*han 13 linux disk-usage command

我在 Linux 中面临磁盘空间已满的问题。使用df命令检查时,我发现“/”目录占用了 100%。因此,要检查哪些文件夹占用太多的空间,我跑cd /du -sh。但是运行命令需要很长时间。但最终我想了解“/”文件夹的哪些顶级直接子文件夹正在消耗大量磁盘空间的详细信息。因此,任何人都可以说出相同的命令。

Dev*_*laN 16

du -h --max-depth=1 / | sort -h -r

这将显示/包含/自身的每个文件夹。

请注意,扫描所有文件可能需要很长时间。如果您需要文件夹中子文件夹的任何特定大小,请指定文件夹的确切路径,而不是/或者/如果您已经在该文件夹中则跳过。

  • -h 选项以人性化的格式显示尺寸
  • --max-depth=1 指示命令只进入内部深处的 1 个目录 /
  • sort -h -r使用人类友好的大小对结果进行排序,并-r指示命令以相反的顺序显示结果(从最大到最小的目录)


alp*_*pha 14

此命令将按顺序列出 15 个最大的:

du -xhS | sort -h | tail -n15

我们使用该-x标志来跳过单独文件系统上的目录。

-hdu给出了在人类可读的格式的输出,sort -h然后可以在顺序安排。

命令中的-Sondu表示不包括子目录的大小。

您可以更改数量tail以查看更少或更多。超级方便的命令。


小智 7

另外两个开源命令行工具,显示使用的最高磁盘空间,是:

ncdu:在大多数 Linux 发行版的 repo 中可用。

Top Disk Usage (tdu) :一个没有依赖项的静态二进制文件,用 Golang 编写。

在此处输入图片说明