我想将许多crons集中到/etc/crontab。现在,每个用户都在/var/spool/cron中拥有自己的cron,这对我来说是不可维护的。我想通过脚本自动完成这个任务,但问题是cron的语法不同。在/etc/crontab中,必须声明用户。我怎样才能有效地完成这个任务?
发布于 2009-08-20 14:42:13
如果我的google是正确的,格式上的区别是:
* syntax:
* user crontab:
* minutes hours doms months dows cmd\n
* system crontab (/etc/crontab):
* minutes hours doms months dows USERNAME cmd\n假设您在文件夹中拥有来自用户crontab的输出,您可以执行以下操作:
find . -type f -print0 | xargs -0 -e perl -pe "s/((\w+\s+){5})(.*)/\1USERNAME \3/;"我不知道这个crontab输出对您是否有意义,所以再检查一遍。使用更好的perl或使用不同的工具(如awk或sed )可以使这个脚本更加简单,但我现在不记得语法了。
https://serverfault.com/questions/56645
复制相似问题