在 *nix 中查找使用所有空间的内容

Ale*_*ski 21 unix

哪个命令序列会告诉我从特定目录(包括所有子目录)开始哪些文件最大?我想知道所有空间都去哪儿了。

最好只使用常规的 unix'y 命令。

如果可能,尽量使其与 Sun OS 5.10 兼容(也许除了常规的 Linux 答案之外,而不是作为替代,以使其尽可能通用。)

Ope*_*SEO 14

全国总工会

很棒:CLI,基于 ncurses,快速,简单。安装它 sudo apt install ncdu

在此处输入图片说明


Jor*_*eña 11

我个人喜欢用来du -sh *查看当前目录中每个目录的大小。

您也可以先排序以获得更大的文件夹:du -shx * | sort -hr. 对于du

  • -s, --summarize: 只显示每个参数的总数
  • -h, --human-readable:人类可读格式的打印尺寸(例如,1K 234M 2G)
  • -x, --one-file-system: 跳过不同文件系统上的目录

对于sort

  • -h, --human-numeric-sort:比较人类可读的数字(例如,2K 1G)

  • 您可以使用 `du -sh * | 将文件大小保持为人类可读的格式。排序 -hr`。 (5认同)

use*_*894 5

基本上你可以使用 du 命令。像这样的东西

du -a /home | sort -rn |head -1
Run Code Online (Sandbox Code Playgroud)

请查看手册页或 info du 以获取更多选项。

或者,您可以使用 GNU 查找。

find /home/ -type f -printf "%s:%p\n" | sort -t":" -rn| head -1  
Run Code Online (Sandbox Code Playgroud)


Lud*_*erl 5

不是命令行,但仍然是 unix'y:kdirstat

我用它来找出所有空间的去向,我比磁盘使用分析器(又名猴面包树)更喜欢它。它是我的 GNOME 环境中可以容忍的少数 KDE 应用程序之一;-)

在此处输入图片说明

根据 kdirstat.sourceforge.net 它在 Solaris 上运行。

虽然 KDirStat 是一个 KDE 程序,但它可以在每个 X11 桌面上运行良好,即,它可以在 Linux、BSD 和许多其他 Unix 类型系统(Solaris、HP-UX、AIX 等)上运行。