linux用于在固定时间间隔启动,在 Linxu 中实现定时任务 最简单的办法或许就是它了...

【IT168 编译】在使用一个计算机系统时,常常需要在日程表上执行某些重复的工作。你可以通过使用 Linux Cron 工具和 Crontab 命令更简便地执行每一次所需的命令,而不是手动去执行。想知道如何使用这些命令在 Linux 中安排定时任务吗 ? 继续往下看吧。

就像 Windows 中的 task 调度工具一样,你也可以利用 Cron 工具来安排 Linux 的工作,定期在固定的时间间隔运行。通常用于自动化系统维护或管理工作,如备份数据、更新包和更多的一些工作,任何 Linux 系统管理员都知道它的重要性。

Linux 中的定时任务:基本指南

什么是 Cron?

Cron 服务是一种基于时间的工作安排服务,通常在系统启动时启动。它会检查每一分钟的工作,并在它们存在时启动。

什么是 Crontab?

为了控制任务进度,我们在 Linux 中使用 Crontab 程序。对于 cron 表来说,Crontab 是一个配置文件。Crontab 的每一行代表一个任务,包含关于运行什么和什么时候运行的信息。下面是 Linux Crontan 的格式:

M H DOM MON DOW Command

每当所有的时间规范字段与当前日期和时间匹配时,就会执行该命令。通常情况下,我们在时间规范字段中使用星号 ( * ) 来匹配该字段中的任何值。

如何打开和编辑 Crontab

现在,让我们学习如何打开和编辑 Crontab 文件,这是 Linux 任务调度中的一个重要步骤。为了实现这一目的,我们可以使用以下命令:

crontab – e

执行此命令后,可能会提示你选择一个编辑器。如果你是初学者,建议选择 Nano,当然,也可以根据自己的喜好习惯任意选择。

选择编辑器之后,会打开一个类似于下面屏幕截图的文件:

注意:Hash ( # ) 符号用于表示注释,这些注解将被 Cron 忽视。

定时任务

现在,为了在 Linux 中调度任务,你所要做的就是按照上面提到的格式输入所有必要的细节。这里有一个例子:假设我想在每个月的第一天的凌晨 2:30 运行命令 usr/bin/backup,需要将下面一行添加到 Crontab:

30 02 1 * * /usr/bin/backup

30 : 30 分

02 : 上午 2 点

1 : 第一天

* : 每个月

* : 这周的每一天

指定多个值和范围

也有可能在 Linux 中安排工作多次出现。只需使用逗号 ( , ) 分隔所需要的值。我们继续用前面的例子进行介绍。现在,如果我想在下午 2 点半执行命令,我需要做的就是 :

30 02,14 1 * * /usr/bin/backup

02,14 :2 AM 和 2 PM

1 : 第一天

注意 : 我们已经利用 14 指定了下午 2 点,因为 Crontab 使用 24 小时的时间格式。

再者,Crontab 甚至可以在 Linux 任务调度中指定一段时间,只需插入一个由 dash ( – ) 分隔的值。在这里,我们将再次考虑我们的初始示例,以展示它是如何完成的。这一次,假设我们希望在每个月的第一天的 2 点到 2 点之间执行命令。我们将以以下方式来做这件工作 :

00 02-14 1 * * /usr/bin/backup

00 : 0 分

02-14 : 2AM, 3AM, 4AM, 5AM, 6AM, 7AM, 8AM, 9AM, 10AM, 11AM, 12AM, 1PM, 2PM 1 : 第一天

Crontab 快捷键

在本文中,关于如何在 Linux 中调度任务的一个好处是,考虑一下 Crontab 格式的下面的快捷方式和关键字,这在 Linux 中可以很方便地安排工作 :

@yearly : 在每年 1 月 1 日凌晨 0 点运行一次

@annually : 与 @yearly 相同

@monthly : 在每月第一天的凌晨 0 点运行一次

@weekly : 在每周日的凌晨 0 点运行一次

@daily : 每天 0 点运行一次

@midnight : 与 @daily 相同

@hourly : 在每小时开始时运行一次

例如:假设我每个月必须运行 /usr/bin/backup 命令,Crontab 的格式应该是:

@monthly /usr/bin/backup

一旦你将更改保存到 Crontab 并退出,你会看到以下消息,这表明你成功地执行了该流程。

有任何疑问或个人建议,请在评论区留言与大家一起讨论吧 !

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值