如何在一行中获取目录中所有内容的总大小?

如何在一行中获取目录中所有内容的总大小?

我知道我可以使用 du -h 输出目录的总大小。但是当它包含其他子目录时,输出将类似于:

du -h /root/test

.
.
.
.
24K   /root/test/1
64K   /root/test/2
876K  /root/test/3
1.1M  /root/test/4
15M   /root/test/5
17M   /root/test

我只想要最后一行,因为目录中的小目录太多了/root/test。我能做些什么?

答案1

添加--max-depth值为0的参数:

du -h --max-depth=0 /root/test

或者,使用-s(摘要)选项:

du -sh /root/test

其中任何一个都应该给你你想要的。对于以后的参考,man du很有帮助。

答案2

tail 和 head 命令用于显示列表的最后一个和开头。

在这种情况下使用以下命令:

## Display the last ten items
du -h /root/test | tail 
## N = 1 last item, N = 30 Last 30 items.
du -h /root/test | tail -n N 

相关内容