我在 git repo 中维护我的(每个用户的)cron 文件,并且更愿意将它们安装在它们的位置。我理解 cron 更喜欢你用 手动编辑文件(呸)crontab -e
。这对于我的部署过程来说一点也不方便,因为我需要很多而只需将文件放置在具有适当所有权的位置即可:
-rw------- 1 postgres crontab 242 Jan 8 08:38 /var/spool/cron/crontabs/postgres
直接阅读文件并不能让我有信心甚至应该尝试:
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.wksCRO/crontab installed on Fri Jan 8 08:38:11 2021)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
# postgres
# m h dom mon dow command
我意识到这是不是推荐,但是,假设我小心不引入错误,有什么东西可以阻止我简单地覆盖 cron 文件?
答案1
您可以使用该crontab
命令在正确的位置为指定用户安装新的 crontab 文件,并赋予正确的所有权和权限
例如,假设您希望为用户创建的新 crontab 文件postgres
名为crontab.postgres
sudo crontab -u postgres path/to/crontab.postgres