Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 检查特定用户的特定目录的总文件大小_Linux_Command_Filesize - Fatal编程技术网

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

Linux 检查特定用户的特定目录的总文件大小,linux,command,filesize,Linux,Command,Filesize,我想检查特定用户的总文件存储量中有多少已在特定目录上使用。我正在使用ls-lR./*| grep userid列出属于特定用户的文件。但是我如何才能得到它们的总文件大小呢?您可以这样做,它将显示用户主目录中每个目录的大小,并在最后打印出它们主目录的总大小(所有子目录的总和) 使用awk ls -lR ./* | grep userid | awk '{sum = sum + $5} END {print sum}' 但是这个不符合我的要求。我们有一个所有组成员都可以写入的组目录,我想检查一个特

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

您可以这样做,它将显示用户主目录中每个目录的大小,并在最后打印出它们主目录的总大小(所有子目录的总和)

使用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。
ls -lR ./* | grep userid | awk '{sum = sum + $5} END {print sum}'