zl程序教程

您现在的位置是:首页 >  其他

当前栏目

在Linux中怎样使用cron创建定时任务

2023-02-25 18:02:44 时间

编写定时任务

要创建定时任务,可以使用 -e 选项编辑crontab:

$ crontab -e

这将使用默认的文本编辑器打开crontab。要设置默认的文本编辑器,可以使用编辑器环境变量:

$ EDITOR=nano crontab -e

cron 语法

要创建一个定时任务,可以编写一个cron表达式,后跟定时任务需要执行的命令。cron表达式在命令运行时进行调度:

  • 分钟(0 - 59)
  • 小时(0 - 23)
  • 日(1 - 31)
  • 月(1 - 12)
  • 星期(0 - 6,0是星期天)

字段中的星号(*)转换为“每个”。例如,此表达式在每个月的每一天每小时的第0分钟运行备份脚本:

0 * * * * /opt/backup.sh

下面这个例子在每个星期天上午的3:30执行:

30 3 * * 0 /opt/backup.sh

简化语法

最新版本的cron已经实现了简单的语法,而不是cron表达式:

  • @hourly 在每天的每个小时的第0分钟运行;
  • @daily 在每天的第0个小时的第0分钟运行;
  • @weekly 在每周的星期天的第0个小时第0分钟运行;
  • @monthly 在每个月的第一天的第0小时第0分钟运行;

例如,下面语句在每天的午夜零点执行备份任务:

/opt/backup.sh @daily

怎样结束一个定时任务

一旦你开始了一个定时任务,它就被设计成永远按计划运行。要在启动定时任务后停止它,必须编辑crontab,删除触发作业的行,然后保存。

$ EDITOR=nano crontab -e

要停止正在运行的作业,请使用标准Linux进程命令停止正在运行的进程。

它是自动化的

一旦你编写完crontab后,保存并退出编辑器,你的定时任务就已经安排好了,cron将会完成剩余所有的工作。