如何找到某个用户占用的总磁盘空间,例如位于/home/Mary
? Perl有什么功能可以知道这个?
答案 0 :(得分:5)
Perl有Filesys::DiskUsage
。只有一个缺点,它在计算时不会占用目录的大小。只有文件的大小。
use Filesys::DiskUsage qw/du/;
$size = du ( { 'sector-size' => 1024 } , { 'human-readable' => 1 } , qw%/home/Mary% );
print "Total size: $size\n";
答案 1 :(得分:1)
如果Perl不是必须的,你可以使用shell命令
find /home -user "Mary" -type f -printf "%s\n" | awk '{sum+=$1}END{print sum" bytes"}'