linux系统终端输入crontab -e会进入类似于vim的界面,在里面可以添加定时任务,退出保存等命令和vim一样。
'''
补充说明:
/var/spool/cron/ 目录下包括每个用户的定时任务
/etc/crontab 和 /etc/cron.d/存放任务及脚本
/etc/cron.daily/ /etc/cron.hourly/ /etc/cron.monthly/ /etc/cron.weekly/ 这些目录可以定时执行脚本
'''
用法:(*星期0表示周日。一般一行对应一个任务)
分 | 小时 | 日 | 月 | 星期 | 命令 |
0-59 | 0-23 | 1-31 | 1-12 | 0-6 | command |
Minute | Hour | Day | Month | Dayofweek | command |
分钟 | 小时 | 天 | 月 | 天每星期 | 命令 |
特殊符号:
“*” | 代表取值范围内的数字 |
“/” | 代表”每” |
“-” | 代表从某个数字到某个数字 |
“,” | 分开几个离散的数字 |
举例:
30 3 10,20 * * ls | #每月10号及20号的3:30执行ls命令[注:“,”用来连接多个不连续的时段] |
25 8-11 * * * ls | #每天8-11点的第25分钟执行ls命令[注:“-”用来连接连续的时段] |
*/15 * * * * ls | #每15分钟执行一次ls命令 [即每个小时的第0 15 30 45 60分钟执行ls命令 ] |
30 6 */10 * * ls | #每个月中,每隔10天6:30执行一次ls命令[即每月的1、11、21、31日是的6:30执行一次ls 命令。 ] |
30 21 * * * /usr/local/etc/rc.d/lighttpd restart | #每晚的21:30重启apache |
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart | #每月1、10、22日 |
10 6 * * * date | #每天早上6点10分 |
0 */2 * * * date | #每两个小时 |
0 23-7/2,8 * * * date | #晚上11点到早上8点之间每两个小时,早上8点 |
0 11 4 * mon-wed date | #每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点 |
0 4 1 jan * date |
#1月份日早上4点 |
30 */8 1-15 12 * sh ./run.sh > /dev/null 2>&1 |
#12月1号到15号这段时间里,每8小时的半点执行run.sh脚本,并丢弃输出 |
其他:(按秒执行任务的方法)# crontab -e
* * * * * / bin / date >> / tmp / date.txt |
|
* * * * * sleep 10 ; / bin / date >> / tmp / date.txt |
|
* * * * * sleep 20 ; / bin / date >> / tmp / date.txt |
|
* * * * * sleep 30 ; / bin / date >> / tmp / date.txt |
|
* * * * * sleep 40 ; / bin / date >> / tmp / date.txt |
|
* * * * * sleep 50 ; / bin / date >> / tmp / date.txt |
参考:
https://www.cnblogs.com/gotodsp/p/6473268.html
https://blog.csdn.net/weixin_41831919/article/details/108542764