如何使用 bash 脚本将 crontab 作业添加到 crontab?

How to add a crontab job to crontab using a bash script?

我尝试了以下命令,crontab 停止了 运行 任何作业: echo "@reboot /bin/echo 'test' > /home/user/test.sh"| crontab -

在 linux 中编写脚本将作业添加到 crontab 的正确方法是什么?

我建议你阅读 Cron and Crontab usage and examples

你可以运行这个:

➜ ( printf -- '0 4 8-14 * *  test $(date +\%u) -eq 7 && echo "2nd Sunday"' ) | crontab
➜  crontab -l
0 4 8-14 * *  test $(date +[=10=]) -eq 7 && echo "2nd Sunday"            

#!/bin/bash
cronjob="* * * * * /path/to/command"
(crontab -u userhere -l; echo "$cronjob" ) | crontab -u userhere -

希望对您有所帮助。

迟到的答案,但在 CentOS 我从 bash 脚本创建了一个新的 cronjob(对于 root,根据需要更改用户):

echo "@reboot command..." >> /var/spool/cron/root

>> 将强制附加到现有的 cronjobs 或创建一个新的 cronjob 文件并在它不存在时附加到它。

我不确定 但试试这个

echo "* * * * * whatever" > /etc/crontabs/root

然后检查“crontab -e”你会在那里看到你的命令

对于那些使用 alpaine 发行版的人,不要忘记调用“crond”来启动您的 crons