crontab使用和格式

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/

点赞(13) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部