cron是一个Linux定时执行工具,可以在无需人工干预的情况下运行作业。在Ubuntu server 下,cron是被默认安装并启动的。通过/etc/crontab文件,可以看到以下内容:
cat /etc/crontab
新增 cron 任务
crontab -e
// 注意千万加上 2>&1,表示将标准输出和出错信息都重定向到 rflogin.log中 // 如果没有加,我观测日志文件是为空的 0 8 * * * rflogin >> /var/log/rflogin.log 2>&1
注意在crontab中$path并不是环境变量,需要设置为环境变量
30 8 * * * export PATH=/root/.nvm/versions/node/v10.13.0/bin:$PATH; rflogin >> /var/log/rflogin.log 2>&1
每天晚上1点10分删除聊天记录:
10 1 * * * export PATH=/usr/local/bin:$PATH; node /home/project-server/lib/schedule/delete.js >> /tmp/deleteCron.txt 2>&1
每周五晚上0点20分开始匹配
20 0 * * 5 export PATH=/usr/local/bin:$PATH; node /home/project-server/lib/schedule/match.js >> /tmp/matchCron.txt 2>&1
保存并退出
Ctrl+X
启动任务
service cron start
/etc/init.d/cron start
重启任务
/etc/init.d/cron restart
service cron restart
显示定时任务
crontab -l
删除任务
crontab -r