linux中crontab任务调度
一.创建调度任务
指令
crontab -e
进入当前用户编辑界面
crontab -u 用户名 -e
进入指定用户编辑界面
进入crontab任务编辑界面
任务编写格式
#每分钟执行查看一次/ect目录,把目录内容写进/tml/a.txt下
*/ 1 * * * * ll /etc >> /tmp/a.text
#crontab对象 +指令
#多个任务同时执行
#crontab对象 指令1&指令2
crontab对象参数
第一个* 表示分钟 范围0-59
第二个* 表示小时 范围:0-23
第三个* 表示天 范围:1-31
第四个* 表示月 范围:1-12
第五个* 表示一周周几 范围:0-7(0和7都是周末的意思)
crontab对象中特殊符号的含义
* 表示任何时间
, 代表多个时间点 比如 1,2 * * * * 表示每天的1分和2分都执行
- 代表时间几到几是个闭区间
*/N 代表多久执行一次
二.查看任务
crontab -l
查看当前用户下的任务
crontab -u 用户名 -l
查看指定用户下的任务
三.删除任务
crontab -r
删除当前用户下的任务
crontab -u 用户名 -r
删除指定用户下的任务
四.使用案例
时间参数案例:
1.每天22点45分执行
45 22 * * *
2.每周一的17点执行
0 17 * * 1
3.每月1号和15号的凌晨5点执行
0 5 1,15 * *
4.每周一到周五的凌晨4点40份执行
40 4 * * 1-5
5.每天的凌晨4点,每隔10分钟执行一次命令
*/10 4 * * *
1.每隔 1 分钟,就将当前的日期信息,追加到 /tmp/mydate 文件中
crontab -e
*/1 * * * * date >> /tmp/mydate
2.每隔 1 分钟, 将当前日期和日历都追加到 /home/mycal 文件中
先写个shell脚本,然后定时执行脚本
vim myshell.sh
#! /bash/bin
date >> /home/mylocal
cal >> /home/mylocal
定时执行
crontab -e
*/1 * * * * /tmp/myshell.sh