linux crontab 定时任务

GeorgeTH 2019-10-25

crontab 定义时任务并不难,只是死记更背有点难受。国外人的思维方式有时候就是违反思维逻辑。比如:中国人写收货地址是从大到小,一步一步清晰明了;外国人就不一样了,先从小地方开始,你根本不知道是啥子地方,只有看完之后反推一遍,你才明白。唉,打个不贴切地比喻,整得像个递归算法似的。

#查看是否安装了该服务
rpm -qa|grep cron
 
#查看cron的状态
systemctl status crond
 
#设为开机启动
systemctl enable crond
 
#启动crond服务
systemctl start crond
 
#查看定时任务列表
crontab -u username -l
 
#编辑 crontab 的配置文件,默认 crontab 会每分钟检查一次任务配置文件
crontab  -u username -e
--------------------------------------------------------------------------------------------
# crontab 基本格式:分(0 - 59)  时(0 - 23)   日(1 - 31)   月(1 - 12)   周(0 - 6,0:日) 命令
# */30  *  *  *  * /usr/local/command  # 从后往前数,周月--日时分,当跳过所有 " * ", 最后是分,即每30分钟执行一次。
-----------------------------------------------------------------------------------------------------------
#编辑 crond 的主配置文件(root)
vim /etc/crontab
 
特别注意,crond的任务计划有自己的环境变量,这时你要么写完整的绝对路径,要么将环境变量添加到 /etc/crontab 中
 
例子( 倒着看:周月--日时分,跳过星号。):
 
30   12   1,10,22   *   *   #表示 [1,10,20]日,12:30 
 
30   12   *   *   6,0   #表示 [6,日]周, 12:30 
 
0,30   18-23   *   *   *    #表示 [18-23]时,[0, 30]分
 
0   23   *   *   6   #表示 周6,11:00
 
*   23-7/1   *   *   *   #表示 [23-7/每1个单位]点
 
0   11   4   *   mon-wed   #表示 [1-3]周  4日 11时
 
0   4   1   jan   *   #表示 1月 1日 4时
 
 
 

相关推荐