如何在 Linux 上轻松设置 cron 作业

Linux命令 Edge插件网 2年前 (2023-03-11) 490次浏览 已收录 0个评论

厌倦了在 Linux 系统上手动运行脚本和任务?进入克龙工作的世界!在这篇文章中,我们将指导您完成在 Linux 上设置 Cron 作业的过程,消除重复性任务的麻烦。从了解基本语法到高级用法示例,您将了解轻松安排和自动化脚本所需的一切。无论您是初学者还是经验丰富的 Linux 用户,本指南对于任何希望简化工作流程并节省时间的人来说都是必读的。不要错过 Cron Jobs 的强大功能,让我们立即开始优化您的 Linux 系统。如何在 Linux 上轻松设置 cron 作业

什么是 Cron 作业?

cron 作业是一个基于时间的任务,由 cron 守护程序自动运行,cron 守护程序是在后台运行的内置 Linux 程序。cron 守护程序检查配置文件(称为 crontab 文件)中的计划命令,并按指定的时间间隔运行它们。

Linux 系统上的每个用户都可以拥有自己的 crontab 文件,管理员还可以创建存储在该文件中的系统范围的 crontab 文件。/etc/crontab

Cron 语法

<span class="pun">*</span> <span class="pun">*</span> <span class="pun">*</span> <span class="pun">*</span> <span class="pun">*</span><span class="pln"> command
</span><span class="pun">-</span> <span class="pun">-</span> <span class="pun">-</span> <span class="pun">-</span> <span class="pun">-</span>
<span class="pun">|</span> <span class="pun">|</span> <span class="pun">|</span> <span class="pun">|</span> <span class="pun">|</span>
<span class="pun">|</span> <span class="pun">|</span> <span class="pun">|</span> <span class="pun">|</span> <span class="pun">-----</span> <span class="typ">Day</span> <span class="kwd">of</span><span class="pln"> week </span><span class="pun">(</span><span class="lit">0</span> <span class="pun">-</span> <span class="lit">7</span><span class="pun">)</span> <span class="pun">(</span><span class="typ">Sunday</span> <span class="pun">=</span><span class="pln"> both </span><span class="lit">0</span> <span class="kwd">and</span> <span class="lit">7</span><span class="pun">)</span>
<span class="pun">|</span> <span class="pun">|</span> <span class="pun">|</span> <span class="pun">-------</span> <span class="typ">Month</span> <span class="pun">(</span><span class="lit">1</span> <span class="pun">-</span> <span class="lit">12</span><span class="pun">)</span>
<span class="pun">|</span> <span class="pun">|</span> <span class="pun">---------</span> <span class="typ">Day</span> <span class="kwd">of</span><span class="pln"> month </span><span class="pun">(</span><span class="lit">1</span> <span class="pun">-</span> <span class="lit">31</span><span class="pun">)</span>
<span class="pun">|</span> <span class="pun">-----------</span> <span class="typ">Hour</span> <span class="pun">(</span><span class="lit">0</span> <span class="pun">-</span> <span class="lit">23</span><span class="pun">)</span>
<span class="pun">-------------</span> <span class="typ">Minute</span> <span class="pun">(</span><span class="lit">0</span> <span class="pun">-</span> <span class="lit">59</span><span class="pun">)</span>

每个字段代表计划的不同方面,如下所述:

  • 分钟 (0-59):指定应执行命令的分钟数。
  • 小时 (0-23):指定应执行命令的小时。
  • 月中的某天 (1-31):指定应在每月的哪一天执行命令。
  • 月份 (1-12):指定应执行命令的月份。
  • 星期几 (0-7):指定应在一周中的哪一天执行命令。星期天是 0 和 7。

Cron 作业示例

以下是一些可帮助您入门的 cron 作业示例:

  1. 每天下午 5 点运行脚本:
<span class="lit">0</span> <span class="lit">17</span> <span class="pun">*</span> <span class="pun">*</span> <span class="pun">*</span> <span class="str">/path/</span><span class="pln">to</span><span class="pun">/</span><span class="pln">script</span>
  1. 每周一下午 3 点运行脚本:
<span class="lit">0</span> <span class="lit">15</span> <span class="pun">*</span> <span class="pun">*</span> <span class="lit">1</span> <span class="pun">/</span><span class="pln">path</span><span class="pun">/</span><span class="pln">to</span><span class="pun">/</span><span class="pln">script</span>
  1. 每天午夜运行脚本:
<span class="lit">0</span> <span class="lit">0</span> <span class="pun">*</span> <span class="pun">*</span> <span class="pun">*</span> <span class="str">/path/</span><span class="pln">to</span><span class="pun">/</span><span class="pln">script</span>
  1. 每小时运行一次脚本:
<span class="lit">0</span> <span class="pun">*</span> <span class="pun">*</span> <span class="pun">*</span> <span class="pun">*</span> <span class="str">/path/</span><span class="pln">to</span><span class="pun">/</span><span class="pln">script</span>

管理 Cron 作业

要管理现有 cron 作业,您可以使用以下命令:

  1. 要查看所有 cron 作业的列表,请执行以下操作:
<span class="pln">crontab </span><span class="pun">-</span><span class="pln">l</span>
  1. 要编辑现有 cron 作业,请执行以下操作:
<span class="pln">crontab </span><span class="pun">-</span><span class="pln">e</span>
  1. 要删除 cron 作业:
<span class="pln">crontab </span><span class="pun">-</span><span class="pln">r</span>
<span class="pln">crontab </span><span class="pun">-</span><span class="pln">r</span>

cron 语法中的每个字段都表示调度过程的不同方面。前五个字段分别表示分钟、小时、月中的某天、月份和星期几。这些字段可以包含特定值或通配符 (*),后者表示所有可能的值。

Cron 作业的常见问题

  • 缺少环境变量。

cron 作业最常见的问题之一是缺少环境变量。当执行 cron 作业时,它会在与普通 shell 不同的环境中执行。这意味着在 shell 中设置的环境变量(如 PATH)可能不会在 cron 环境中设置。若要解决此问题,需要指定要运行的命令或脚本的完整路径。

  • 文件权限不正确。

cron 作业的另一个常见问题是文件权限不正确。如果要运行的脚本或命令不可执行,则 cron 作业将失败。若要解决此问题,您需要使用 chmod 命令确保文件具有适当的权限。例如,若要使文件可执行,应运行以下命令:

<span class="pln">chmod </span><span class="pun">+</span><span class="pln">x </span><span class="pun">/</span><span class="pln">path</span><span class="pun">/</span><span class="pln">to</span><span class="pun">/</span><span class="pln">file</span>
    • 不正确的 cron 作业语法。

    不正确的 cron 作业语法是另一个常见问题。请务必确保 cron 作业的语法正确。cron 作业的语法如下:

<span class="pun">*</span> <span class="pun">*</span> <span class="pun">*</span> <span class="pun">*</span> <span class="pun">*</span> <span class="str">/path/</span><span class="pln">to</span><span class="pun">/</span><span class="pln">command</span>

每个字段表示计划的不同方面,必须正确指定。例如,第一个字段表示分钟,范围为 0 到 59。第二个字段表示小时,范围为 0 到 23。任何字段中的语法不正确都可能导致 cron 作业失败。


Edge插件网 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:如何在 Linux 上轻松设置 cron 作业
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址