如何使用脚本更新用户的 crontab 而无需重复注释

如何使用脚本更新用户的 crontab 而无需重复注释

所以我注意到我通过使用在相当多的 crontab 文件的顶部转储了很多烦人的注释

crontab -u user -l > /tmp/crontab.user
#muck with the file
crontab -u user /tmp/crontab.user

现在我被困住了

# DO NOT EDIT THIS FILE

另外两行在我的 crontab 文件顶部一遍又一遍地重复。

我想通过做类似的事情来摆脱这些

crontab -u user -l > /tmp/crontab.user
#muck with the file
#clean up the file
crontab -u user /tmp/crontab.user

但我不太确定应该做什么来安全地清除此处的三个注释行组。我猜某种sed+tail组合是合适的。或者只是一个 Perl 语句。

答案1

清理脚本可能类似于

sed -i '/^# DO NOT EDIT.*\|^# (.*/d' /tmp/crontab.user

因为您的 cron 版本至少在标头部分放置了# DO NOT EDIT# (in ,并且您从未在任何托管代码中使用以此类开头的内容(如果其他人这样做,他们会感到抱歉)

相关内容