当我想要一个包含子目录大小的列表时,我必须与 du 一起使用哪些标志?

当我想要一个包含子目录大小的列表时,我必须与 du 一起使用哪些标志?

我有一台带有许多主目录的 Ubuntu 机器。

/home/stu123
/home/stu124
/home/stu125
...

考虑到我在home目录中:我知道我必须将命令duh标志一起使用才能查看每个目录的大小(以 B、KB、MB 等为单位)。

但随后它会递归进入每个目录并打印每个文件的大小。

我喜欢将每个文件夹的字节大小直接放在“home”下面。

就像是:

stu123  458MB
stu124   68MB
stu125  392MB

这样我就得到了每个文件夹的字节大小总和。

仅凭 就可能吗du

最好的情况是结果按顺序显示。

在上面的例子中:

stu124  68MB
stu125  392MB
stu123  458MB

答案1

您可以使用

du -d 1 -h

-d 1选项使du报告的深度达到一个级别。

对于已排序的输出,您可以添加| sort -h -k1到命令中。

例子:

$ du -d 1 -h | sort -h -k1
8,0K    ./dir3
8,0K    ./dir1
5,0M    ./dir2
5,0M    .

答案2

你可以做:

sudo du -h -d 1 /home
  • -h实现人类可读的输出du

  • -d 1( --max-depth=1) 将遍历的最大深度设置为 1,因此我们从/home仅计算单个主目录开始,例如/home/stu123/home/stu124

相关内容