linux任务计划
基于crond服务 :
crontab 命令:
介绍:设置linux的任务计划
格式:crontab [option]
用法:
-u :指定用户,默认为当前用户
-r :删除计划任务
-l :查看当前计划
-e : 编写计划任务(默认保存在/var/spool/cron/目录下的用户名文件中)
[root@localhost ~]# cat /etc/crontab # 配置文件
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
[root@localhost ~]# crontab -l
crontab -l
实际上是用vi打开了 /var/spool/cron/username
文件
命令错误 crond没启动或格式错误等都会造成计划任务不执行
[root@localhost ~]# crontab -l
# 每日8:15分给1.txt追加1
15 8 * * * echo "1" >> 1.txt
# 每隔8小时执行
* */8 * * * echo "1" >> 1.txt 2>>2.txt
# 每天的1,12,18时执行
* 1,12,18 * * * echo "1" >> 1.txt
# 每天的9:30到18:30执行
* 9-19 * * * echo "123" >> 1.txt
# 每周日的5:00执行
* 5 * * 0 echo "123" >> 1.txt
分范围0-59,时范围0-23,日范围1-31,月范围1-12,周1-7
可用格式1-5表示一个范围1到5
可用格式1,2,3表示1或者2或者3
可用格式*/2表示被2整除的数字,比如小时,那就是每隔2小时
要保证服务是启动状态
systemctl start crond.service
最后更新于
这有帮助吗?