带有 pure-pw 列表的 pure-quotacheck 的 cron 作业

带有 pure-pw 列表的 pure-quotacheck 的 cron 作业

我想自动化纯 ftp 服务器的配额检查过程。

我已经阅读了文档,所以我可以这样做pure-quotacheck -d /path2/home -u user

我能想到的最简单的方法是将 pure-pw list (因为它显示用户和主页路径)与上述命令结合起来,但我不知道如何将两者结合起来。

到目前为止,我想出了:

for s r in $(pure-pw list) | {print $1 $2}; do pure-quotacheck -u $s -d $r; done

但我得到

意外标记“r”附近出现语法错误

$ pure-pw list

def                 /home/def/./

我还需要从 pure-pw 列表的输出中删除“/./”。

答案1

要将行拆分为变量,您可以使用read(尽管有许多注意事项,就像在 shell 中处理文本时一样):

pure-pw list | while read s r; do pure-quotacheck -u "$s" -d "$r"; done

$r这允许您在调用之前进行处理pure-quotacheck例如删除/./.您还可以pure-pw按照您的建议通过处理 的输出来做到这一点:

pure-pw list | sed 'sX/./$XX' | while read s r; do pure-quotacheck -u "$s" -d "$r"; done

当字符串中有“http://”时,sed如何替换?那里有用法的解释sed

相关内容