要在 Linux 上执行固定週期的时程,利用 crontab 这个内建的功能便可以完成,可以根据设置的时间参数来执行例行性的工作排程。
* 7 * * 1-6 /usr/local/MyDir/app/monitor.sh
参数依序是分钟、小时、日期、月份、星期、command
※ 星期参数为 0 则代表是星期日。
参数说明
星号:代表任何时刻都接受的意思
逗号:代表分隔时段,例如:30 9,17 * * * command
,代表早上9点半和下午五点半都执行 command。
减号:代表一段时间範围,例如:15 9-12 * * * command
,代表从9点到12点的每个15分都执行 command。
反斜线n:n代表数字,表示每个 n 单位间隔,例如:*/5 * * * * command
,代表每隔 5 分钟执行一次。
操作说明
crontab 是会根据不同的使用者去判定可以操作的範围。
crontab -l:列出该使用者拥有的 crontab 指令
crontab -e:编辑该使用者的 crontab 指令
crontab -r:将使用者的 crontab 全部清除(小心使用)
编辑完后就可以存档离开,Linux 系统便会依照你设定的排程固定做事。
※ 下达指令请用绝对路径避免错误
範例参考:
每五分钟执行一次测试 shell script*/5 * * * * /home/ubuntu/test.sh
每天早上九点(除了星期日)执行 report.js0 9 * * 1-6 node /home/ubuntu/workspace/report.js