Shell 使用脚本编写cronjob

Shell 使用脚本编写cronjob,shell,jenkins,cron,Shell,Jenkins,Cron,这是我第一次尝试将cronjob设置为在Jenkins中自动执行更新。 目前,我已经完成了以下工作: 1. sudo crontab -e # opens the cron tab which will/should put the file in /var/spool/cron 2. @daily yum update # running the updates daily 这解决了问题,但是 当我尝试执行sudo cd/var/spool/cron时,我看不到任何crontab。但是

这是我第一次尝试将cronjob设置为在Jenkins中自动执行更新。 目前,我已经完成了以下工作:

1. sudo crontab -e # opens  the cron tab which will/should put the file in /var/spool/cron
2. @daily yum update  # running  the updates daily
这解决了问题,但是

  • 当我尝试执行
    sudo cd/var/spool/cron
    时,我看不到任何
    crontab
    。但是当我执行
    sudo crontab-l
    时,它会显示
    @daily-yum-updates
  • 如何通过脚本将内容
    @daily yum updates
    写入
    crontab
    (如cloud init脚本)
  • 一种方法是-

    #write out current crontab
    crontab -l > mycron
    #echo new cron into cron file
    echo "@daily yum updates" >> mycron
    #install new cron file
    crontab mycron
    rm mycron
    

    在添加了它并旋转了新的jenkins之后,当我尝试执行
    sudo crontab-l
    时,它会说
    no crontab for root
    ,而且,您为什么要执行
    rm mycron
    ?哪个用户正在执行此命令?它应该为该用户添加一个婴儿床选项卡。micron是一个临时文件,用于加载crontab中的条目,如果您使用man crontab,您可以准备好所需的参数并最终删除它,这是一个很好的实践。此外,我可以知道,如果我将命令放入/etc/cron.d/patch文件中,它将作为cronjob自动调用吗<代码>echo“03***根yum-d0-y更新>/dev/null 2>&1&&shutdown-r+1”>/etc/cron.d/patch?如果是,我是否应该删除上一个?