crontable 命令,是在linux下的定时命令,适合进行长期的定时任务执行。
crontable命令具体格式,
3.1 linux 下执行crontab -e 命令。
”*” 代表取值范围内的数字,
“/” 代表”每”,
“-” 代表从某个数字到某个数字,
“,” 分开几个离散的数字
Crontab 示例
1. 在 12:01 a.m 运行,即每天凌晨过一分钟。这是一个恰当的进行备份的时间,因为此时系统负载不大。
1 0 * * * /root/bin/backup.sh
2. 每个工作日(Mon – Fri) 11:59 p.m 都进行备份作业。
59 11 * * 1,2,3,4,5 /root/bin/backup.sh
下面例子与上面的例子效果一样:
59 11 * * 1-5 /root/bin/backup.sh
3. 每5分钟运行一次命令
*/5 * * * * /root/bin/check-status.sh
4. 每个月的第一天 1:10 p.m 运行
10 13 1 * * /root/bin/full-backup.sh
5. 每个工作日 11 p.m 运行。
0 23 * * 1-5 /root/bin/incremental-backup.sh
Crontab 选项
以下是 crontab 的有效选项:
o crontab –e : 修改 crontab 文件. 如果文件不存在会自动创建。
o crontab –l : 显示 crontab 文件。
o crontab -r : 删除 crontab 文件。
o crontab -ir : 删除 crontab 文件前提醒用户。
3.2 crontab的几个服务命令
service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置
3.3 实验
自己创建一个test.sh
内容:
#!/bin/bash
echo "i say the calculate"
写完不要忘了 赋权限
chmod 777 test.sh
之后再编辑crontab命令
[root@localhost ~]# crontab -e
* * * * * /usr/local/logstash/logstash-5.6.1/test.sh
* * * * * sleep 10; /usr/local/logstash/logstash-5.6.1/test.sh
* * * * * sleep 20; /usr/local/logstash/logstash-5.6.1/test.sh
* * * * * sleep 30; /usr/local/logstash/logstash-5.6.1/test.sh
* * * * * sleep 40; /usr/local/logstash/logstash-5.6.1/test.sh
* * * * * sleep 50; /usr/local/logstash/logstash-5.6.1/test.sh
保存
之后 service crond start
查看 /var/spool/mail
你会发现后台定时 每10秒执行一次test.sh
此时无论你如何离线,它都不会关闭,除非你关闭服务。