通过 SSH 获取用户的 CentOS 文件夹大小

通过 SSH 获取用户的 CentOS 文件夹大小

我一直在为客户编写备份脚本,但是如果我通过 FTP 帐户获取大小,则需要很长时间才能加载页面,想知道通过 PHP 运行 SSH 命令是否会更快?有人能告诉我需要使用哪些命令来确定文件夹大小(以 kb 为单位)吗?

或者

要获取已使用的用户配额?因为我每个备份帐户都有一个 FTP 用户,所以只需要知道它使用了多少

答案1

这将为您提供 /home 中每个主目录的大小(以 kb 为单位):

for username in `ls /home/`
do
    echo "Size for is $username `du -hs /home/$username/ --block-size=1024 | cut -f1`kb"
done    

如果您在某处有一个 ftp 用户列表,您可以修改此脚本,通过将其放入 for 循环中来使用该列表。

for username in `awk -F: '{print $1}' /home/mylistwithusers`

答案2

你不能只使用PHP 中的 filesize() 函数递归获取整个目录的大小?

相关内容