一 命令介绍
1.1 功能
用来提交和管理用户需要周期性执行的任务,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。
1.2 语法
语法
crontab [选项] [参数]
常用选项
- -u <用户名>:指定要设定计时器的用户名称。
- -e:编辑crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。
- -l:显示crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。
- -r:从/var/spool/cron目录中删除crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。
参数
- crontab文件:指定包含待执行任务的crontab文件。
1.3 crontab的文件格式及解释
crontab的文件格式
分 时 日 月 周 要运行的命令
crontab内容解释
*/1 * * * * /usr/bin/php /var/www/html/sqlops/mysql_monitor/check_mysql_repl.php
- 第一列分钟0~59
- 第二列小时0~23
- 第三列日1~31
- 第四列月1~12
- 第五列星期0~7(0和7代表星期天)
- 第六列要运行的命令
1.4 服务启停
停止crontab服务
service crond stop
启动crontab服务
service crond start
查看crontab服务状态
service crond status
二 使用场景
2.1 案例1
每1分钟执行一次command
* * * * * command
2.2 案例2
在上午8点到11点的第3和第15分钟执行
3,15 8-11 * * * command
2.3 案例3
每个星期一的上午8点到11点的第3和第15分钟执行
3,15 8-11 * * 1 command
2.4 案例4
每晚的21:30重启smb
30 21 * * * /etc/init.d/smb restart
至此,crontab命令梳理完成。