哪个命令序列可以告诉我从特定目录(包括所有子目录)开始哪些文件最大?我想知道所有空间都到哪里去了。
最好只使用常规的 unix'y 命令。
如果可能的话,尽量让它与 Sun OS 5.10 兼容(也许作为常规 Linux 答案的补充,而不是替代,以使其尽可能通用。)
答案1
我个人喜欢用来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)
答案2
答案3
基本上你可以使用 du 命令。像这样
du -a /home | sort -rn |head -1
请查看手册页或 info du 以获取更多选项。
或者,您可以使用 GNU find。
find /home/ -type f -printf "%s:%p\n" | sort -t":" -rn| head -1
答案4
菲莱赛特从命令行运行,并生成 PNG 加 Web 服务器,以便您可以在线查看它。
我通过这个磁盘使用程序列表找到了它。除了以下程序之外,还有以下有用的程序列表ncdu
(体积小、快捷、仅命令行):http://www.makeuseof.com/tag/how-to-analyze-your-disk-usage-pattern-in-linux/