您的位置:

Linux Crontab配置指南

一、什么是Crontab?

Crontab是一个linux下的定时任务工具,可以让用户在指定时间执行指定的命令或者脚本。它是在后台运行的,无需用户登录,随时可以进行定时任务的管理。

二、Crontab的使用方法

1、新增或者修改定时任务:

```bash crontab -e ```

2、查看已有的定时任务

```bash crontab -l ```

3、删除定时任务

```bash crontab -r ```

三、Crontab定时任务语法

Crontab的定时任务语法是一个由五个时间字段和命令组成的单行字符串。

```text * * * * * command ```

5个时间参数分别表示:分钟、小时、日期描述、月份、星期描述。

用*表示任何时刻。

四、Crontab的时间描述详解

1、星号 * 表示任何时刻都可。

2、数字代表的含义:

  • 分钟:0-59
  • 小时:0-23
  • 日期:1-31
  • 月份:1-12
  • 星期:0-6 (0表示星期天)

3、多个时间段用 / 分隔

```text */5 * * * * command ```

表示每隔5分钟执行一次command命令。

五、Crontab示例

1、每天早上6点执行/tmp/filecleanup.sh 程序:

```text 0 6 * * * /tmp/filecleanup.sh ```

2、每小时执行/tmp/checkstatus.sh脚本:

```text 0 * * * * /tmp/checkstatus.sh ```

3、每周星期3的晚上5点执行备份操作:

```text 0 17 * * 3 /home/user/backup.sh ```

六、执行结果输出

在Crontab执行的时候,结果输出通常是会被忽略的。所以我们要为命令加上输出定向符(”>”)用来将输出结果定向到文件中。

例如:

```text 0 0 * * * /home/user/backup.sh > /home/user/backup.log ```

这样备份操作的输出就会被保存在/home/user/backup.log文件中。

七、注意事项

1、路径问题:

在Crond作业中用到的脚本,需要保证脚本中所包含的路径都是绝对路径。

2、不要有中文字符:

在Crontab指定的执行脚本、命令、参数中应该避免使用中文字符。因为中文字符不一定能够被识别。

3、重启Crontab服务:

```bash systemctl restart crond.service ```

八、总结

通过以上的介绍和示例,我们可以掌握Crontab工具的使用方法和语法规则,帮助我们高效地处理定时任务的问题。