如何确定系统上最大文件/目录的存储位置?

myu*_*uf3 45 filesystem command-line disk memory

我想知道你怎么知道我系统中最大的文件存储在哪里。

例如 - -

已用磁盘空间:1GB Java:500MB Java 百分比:50% 可以用饼图表示。也许?

我知道这可能是一个功能矫枉过正。我有时会忘记存储东西,并想知道为什么我的磁盘如此满。

所以基本上是一个命令,它将允许我在文件系统上运行并为我提供有关使用的磁盘空间的信息。

谢谢,麻烦您了。

Eri*_*ami 50

磁盘使用情况分析器位于 Ubuntu > 附件 > 磁盘使用情况分析器下。它为您提供了一个时髦的饼图,显示哪些文件和文件夹占用的空间最多:

在此处输入图片说明

关于它的文档有点少,但您可以在 Ubuntu wiki项目页面上找到更多信息。

如果您对使用命令行感兴趣,请参阅此处的du描述。


Unc*_*eiv 31

除非最近有变化,baobab只显示目录;查看kdirstat以获取实际显示文件的替代方法,按类型着色。

命令行替代方案是

du -a | sort -nr | head
Run Code Online (Sandbox Code Playgroud)


小智 21

@UncleZeiv 提出的解决方案在真的没有剩余空间时不起作用,因为/tmp当有多行要排序时, sort 正在使用文件夹。

du -a | sort -nr | head
sort: write failed: /tmp/sortuCYq8E: No space left on device
Run Code Online (Sandbox Code Playgroud)

另一种选择是结合@UncleZeiv 和@Yoav Weiss 的答案,并为临时位置添加另一条路径:

sudo du -a | sort -nr -T /media/usb-key
Run Code Online (Sandbox Code Playgroud)

最后,我的首选解决方案将是一种人类可读的解决方案,它不依赖于临时文件夹和列出根目录 ( /):

sudo du -ah --max-depth=1  / | sort -hr
Run Code Online (Sandbox Code Playgroud)

  • 这应该是最好的答案 (3认同)

小智 7

在您需要从命令行确定特定目录的情况下,一个有用的命令会有所帮助:

du --max-depth=1 -x -h
Run Code Online (Sandbox Code Playgroud)

它为您提供第一个深度目录及其大小的列表

-x 将分析限制在一个文件系统

-h 显示人类可读的 k/M/Gbytes(这会阻止您对输出进行排序)