📜  从命令行创建 cron 作业 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:49:22.791000             🧑  作者: Mango

从命令行创建 cron 作业 - Shell-Bash

在 Unix/Linux 系统上,cron 是一个非常重要的任务调度工具。它可以定时执行任务,非常适合在服务器上处理定期任务,如备份数据库,发送报告等。

下面是使用 Shell/Bash 在命令行上创建 cron 作业的步骤:

步骤一:打开 crontab 编辑器

在命令行上输入以下命令,即可打开 crontab 编辑器:

crontab -e

如果你是第一次执行该命令,系统会提示选择编辑器。你可以选择自己熟悉的编辑器,如 vim、nano 等。

步骤二:编写 cron 作业规则

在 crontab 编辑器中,你可以创建和编辑 cron 作业规则。每一行表示一个 cron 作业规则,格式如下:

* * * * * command

其中,* * * * * 表示时间规则,共有 5 个星号,分别表示:

  1. 分钟(0-59)
  2. 小时(0-23)
  3. 日(0-31)
  4. 月(0-12)
  5. 星期(0-7,其中 0 和 7 都表示周日)

每个星号可以是一个数字,也可以是一个范围,如 1-5,也可以是一个逗号分开的列表,如 1,2,5

command 表示要执行的命令或脚本。

下面是几个例子:

  • 每天凌晨 1 点执行备份数据库脚本

    0 1 * * * /path/to/backup.sh
    
  • 每周三下午 5 点发送报告邮件

    0 17 * * 3 /path/to/send_report.sh
    
  • 每小时执行一次清理日志脚本

    0 * * * * /path/to/clean_logs.sh
    
步骤三:保存并退出 crontab 编辑器

在编辑器中保存你的修改,然后退出即可。你可以使用以下命令查看当前的 cron 作业列表:

crontab -l
注意事项
  • 如果你在执行命令时出现了错误,请检查命令的路径和权限是否正确。

  • 在编辑器中使用 # 号表示注释,可以在规则前面加上一行注释来说明该规则的作用。

  • crontab 中的时间规则是基于系统的时区设置的。

  • cron 作业需要在后台运行,不要依赖终端窗口。

  • 如果你的脚本需要运行一段时间,可能需要增加超时限制或定时运行额外的计划任务来监视它们。

参考链接