有时候我们运维系统,需要用到shell 脚本来批量插入计划任务,但是由于crontab -e 执行的是交互式的编辑,为了提高工作效率,下面非交互式的写入定时任务到crontab
步骤
假设我们要添加一个 0 0 * * * sh /data/bak_everyday.sh 的任务
执行以下命令
root@centos-mysql01:~# (crontab -l;echo "0 0 * * * sh /data/bak_everyday.sh > /dev/null 2>&1 ") | crontab
再次查看crontab 是否成功
root@centos-mysql01:~# crontab -l
非交互式删除一个crontab 任务
root@centos-mysql01:~# crontab -l | grep -v "bak_everyday.sh" | crontab
直接写入文件
root@centos-mysql01:~# echo '*/15 * * * * /data/sh/chkrootkit_everyday.sh ' > /var/spool/cron/root