在 Ubuntu 14.04 (Trusty Tahr) 上是否有终端命令列出文件夹大小和相应的文件大小?

rid*_*nds 31 ubuntu-14.04

是否有 Ubuntu 14.04 终端命令来列出文件夹大小并细分文件夹中的每个文件大小及其大小?

我的一个文件夹占用了大量空间,我想确定哪些文件或子文件夹是罪魁祸首。

我知道du -sh给出了总文件夹大小,并ls -lah在每个文件夹中给出了文件/子文件夹大小,但是有没有办法获得所有内容的整体快照?

小智 61

我喜欢简单地使用:

du -chd 1 | sort -h
Run Code Online (Sandbox Code Playgroud)

它从当前目录位置(上面的“1”)输出每个子目录的总大小,以及所有子目录的总和,并按人类可读的大小对其进行排序:

看看这里的样子。


αғs*_*нιη 6

是的,有tree命令。通过 安装它sudo apt-get install tree,然后键入以下内容:

tree -h
Run Code Online (Sandbox Code Playgroud)

人树

-h    Print  the size of each file but in a more human readable way, e.g. appending a size letter for kilo?
      bytes (K), megabytes (M), gigabytes (G), terabytes (T), petabytes (P) and exabytes (E).
Run Code Online (Sandbox Code Playgroud)

完毕 :)

  • 不客气。就在这里。添加 `--du` 选项,如 `tree -h --du`。 (2认同)

Vla*_*nac 6

我发现这些有用的前 10 个磁盘使用。为了快速使用,命令行如下:

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

它列出了所有磁盘空间使用最多的文件夹(包括重复的子文件夹)。


Gob*_*ord 5

树很好,我知道这可能就是你想要的。我想向您展示一些稍微不同的东西,以帮助您找到您正在寻找的东西(占用最多空间的东西):

du -lah|grep -v -e '^.*K[[:space:]]'|sort -r -n
Run Code Online (Sandbox Code Playgroud)

您还可以通过管道连接到 head 以获取顶部列表:

du -lah|grep -v -e '^.*K[[:space:]]'|sort -r -n|head
Run Code Online (Sandbox Code Playgroud)

我实际上试图用grep -v -e...来给出这个,但由于某种原因它似乎没有对输出起作用du -lah。不过应该足够了。