检查特定用户的特定目录的总文件大小

Posted

技术标签:

【中文标题】检查特定用户的特定目录的总文件大小【英文标题】:Check total file size of a specific directory for a specific user 【发布时间】:2011-07-11 00:42:45 【问题描述】:

我想检查在特定目录上使用了特定用户的总文件存储量。我正在使用ls -lR ./* | grep userid 列出属于特定用户的文件。但是那我怎么才能得到它们的总文件大小呢?

【问题讨论】:

【参考方案1】:

你可以做这样的事情,它会显示用户主目录中每个目录的大小,并在最后打印他们的主目录的总大小(所有子目录的总和)。

du -sch /home/USER/*

【讨论】:

但是这个不符合我的要求。我们有一个所有组成员都可以写入的组目录,我想检查特定用户使用了多少存储空间。不仅仅是他们的主目录。还是谢谢。【参考方案2】:

使用 awk

ls -lR ./* | grep userid | awk 'sum = sum + $5 END print sum'

【讨论】:

无论如何要在另一边获得这个“人类可读”?谢谢! @shootingstars 产生人类可读输出的简单版本是ls -lR ./* | grep userid | awk 'sum = sum + $5 END printf "%iK\n", sum/1024'。因为这是整数数学,所以没有四舍五入。您可以将其扩展到 MB 或 GB,但任何比这更复杂的东西,我都会使用 Ruby。

以上是关于检查特定用户的特定目录的总文件大小的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 为特定路线设置最大上传大小限制?

使用批处理文件检查特定文件大小

如何针对特定目标文件大小优化图像大小?

linux命令获取特定文件夹中存在的文件和目录的大小? [关闭]

计算所有不可删除文件的总大小(包括子目录中的文件)

计算多个文件夹的文件夹大小[关闭]