Crond是Linux系统中一个定时任务管理工具,是一个守护进程,可用于在特定时间间隔内执行任务。crond守护进程会周期性的检查是否有要运行的任务,如果有,则会运行这个任务。在Linux系统中,通过crontab命令创建一个类似于任务表的文件,以此来设定任务的执行方式和时间。
下面我们就来详细介绍一下crontab的使用方法和格式,包括常用命令、格式说明和示例说明。
## crontab常用命令
首先我们来看一下crontab的常用命令。
1. **crontab -e:** 编辑当前用户的任务表;
2. **crontab -l:** 列出当前用户的任务表;
3. **crontab -r:** 删除当前用户的任务表;
4. **crontab -u [用户]:** 操作指定用户的任务表。
## crontab格式说明
Crond的配置文件是由一系列的任务组成,每个任务都由一行来描述。一般情况下,这一行被分为6个字段,每个字段分别代表着不同的含义,这6个字段的意义如下:
```
* * * * * command to be executed
- - - - -
| | | | |
| | | | +----- day of the week (0 - 6) (Sunday=0)
| | | +------- month (1 - 12)
| | +--------- day of the month (1 - 31)
| +----------- hour (0 - 23)
+------------- min (0 - 59)
```
最前面的5个字段代表了任务的执行时间,最后一个字段则是要执行的命令。多个时间点可以用逗号分隔,例如"0,15,30,45",表示每小时的0分、15分、30分和45分执行一次。
> 注:天数、星期等两个字段必须有一个为*,不能两个都是具体数字。例如不能设定"2 3 10 5 * 6",因为无法确定这个任务是设定在每月的第10天还是每周的星期天上。
## crontab示例说明
下面我们就通过一些示例来说明一下crontab的使用方法和格式。
### 示例1:每天定时备份文件
00 20 * * * tar -zcvf /backup/backup.tar.gz /data/
上面的命令表示,在每天的20:00,备份/data/目录下的所有文件到/backup/backup.tar.gz文件中。
### 示例2:每个星期五定时更新系统
00 2 * * 5 yum update -y
上面的命令表示,在每个星期五的凌晨2点,执行yum update -y自动更新系统。
### 示例3:每小时定时执行脚本
0 * * * * /usr/local/bin/script.sh
上面的命令表示,每个小时的0分,执行脚本/usr/local/bin/script.sh。
### 示例4:每隔30分钟定时更新一次
*/30 * * * * /usr/bin/update.sh
上面的命令表示,每隔30分钟,执行脚本/usr/bin/update.sh。
### 示例5:每月1号凌晨定时清理系统日志
0 0 1 * * rm -rf /var/log/*
上面的命令表示,每月1号凌晨0点清理系统日志。
### 示例6:每天定时备份数据库
00 3 * * * mysqldump -u user -ppassword dbname > /backup/dbname.sql
上面的命令表示,在每天凌晨3点备份数据库dbname,并保存到/backup/dbname.sql文件。
### 示例7:每个小时将系统CPU和内存占用记录到日志
0 * * * * top -n 1 | head -17 >> /var/log/system.log
上面的命令表示,在每个小时的0分,将系统当前的CPU和内存占用情况记录到/var/log/system.log日志文件中。
以上就是crontab的使用方法和格式说明,希望能对大家有所帮助。 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.37seo.cn/
发表评论 取消回复