https://linux.cn/article-9687-1.html

Cron 是您可以在任何类 Unix 操作系统中找到的最有用的实用程序之一。它用于安排命令在特定时间执行。这些预定的命令或任务被称为 “Cron 任务”。Cron 通常用于运行计划备份、监视磁盘空间、定期删除不再需要的文件(例如日志文件)、运行系统维护任务等等。在本简要指南中,我们将看到 Linux 中 Cron 任务的基本用法。

Cron 任务入门指南

cron 任务的典型格式是:

  1. 分钟(0-59) 小时(0-24) 日(1-31) 月(1-12) 星期(0-6) 要执行的命令

只需记住 cron 任务的格式或打印下面的插图并将其放在你桌面上即可。

在上图中,星号表示特定的时间块。

要显示当前登录用户的 crontab 文件的内容:

  1. $ crontab -l

要编辑当前用户的 cron 任务,请执行以下操作:

  1. $ crontab -e

如果这是第一次编辑此文件,会询问你使用哪个编辑器来编辑此文件。

  1. no crontab for sk - using an empty one
  2. Select an editor. To change later, run 'select-editor'.
  3. 1. /bin/nano <---- easiest
  4. 2. /usr/bin/vim.basic
  5. 3. /usr/bin/vim.tiny
  6. 4. /bin/ed
  7. Choose 1-4 [1]:

选择适合你的编辑器。这里是一个示例 crontab 文件的样子。

在这个文件中,你需要添加你的 cron 任务。

要编辑其他用户的 crontab,例如 ostechnix,请执行:

  1. $ crontab -u ostechnix -e

让我们看看一些例子。

要 每分钟 执行一次 cron 任务,需使用如下格式。

  1. * * * * * <command-to-execute>

要每 5 分钟运行一次 cron 任务,请在 crontab 文件中添加以下内容。

  1. */5 * * * * <command-to-execute>

要在每 1/4 个小时(每 15 分钟)运行一次 cron 任务,请添加以下内容:

  1. */15 * * * * <command-to-execute>

要每小时的第 30 分钟运行一次 cron 任务,请运行:

  1. 30 * * * * <command-to-execute>

您还可以使用逗号定义多个时间间隔。例如,以下 cron 任务每小时运行三次,分别在第 0、 5 和 10 分钟运行:

  1. 0,5,10 * * * * <command-to-execute>

每半小时运行一次 cron 任务:

  1. */30 * * * * <command-to-execute>

每小时运行一次:

  1. 0 * * * * <command-to-execute>

每 2 小时运行一次:

  1. 0 */2 * * * <command-to-execute>

每天运行一项(在 00:00 运行):

  1. 0 0 * * * <command-to-execute>

每天凌晨 3 点运行:

  1. 0 3 * * * <command-to-execute>

每周日运行:

  1. 0 0 * * SUN <command-to-execute>

或使用,

  1. 0 0 * * 0 <command-to-execute>

它将在每周日的午夜 00:00 运行。

星期一至星期五每天运行一次,亦即每个工作日运行一次:

  1. 0 0 * * 1-5 <command-to-execute>

这项工作将于 00:00 开始。

每个月运行一次:

  1. 0 0 1 * * <command-to-execute>

于每月第 1 天的 16:15 运行:

  1. 15 16 1 * * <command-to-execute>

每季度运行一次,亦即每隔 3 个月的第 1 天运行:

  1. 0 0 1 */3 * <command-to-execute>

在特定月份的特定时间运行:

  1. 5 0 * 4 * <command-to-execute>

每个四月的 00:05 运行。

每 6 个月运行:

  1. 0 0 1 */6 * <command-to-execute>

这个定时任务将在每六个月的第一天的 00:00 运行。

每年运行:

  1. 0 0 1 1 * <command-to-execute>

这项 cron 任务将于 1 月份的第一天的 00:00 运行。

我们也可以使用以下字符串来定义任务。

@reboot 在每次启动时运行一次。 @yearly 每年运行一次。 @annually(和 @yearly 一样)。 @monthly 每月运行一次。 @weekly 每周运行一次。 @daily 每天运行一次。 @midnight (和 @daily 一样)。 @hourly 每小时运行一次。

例如,要在每次重新启动服务器时运行任务,请将此行添加到您的 crontab 文件中。

  1. @reboot <command-to-execute>

要删除当前用户的所有 cron 任务:

  1. $ crontab -r

还有一个名为 crontab.guru 的专业网站,用于学习 cron 任务示例。这个网站提供了很多 cron 任务的例子。

有关更多详细信息,请查看手册页。

  1. $ man crontab

那么,就是这样。到此为止,您应该对 cron 任务以及如何实时使用它们有了一个基本的了解。后续还会介绍更多的优秀工具。敬请关注!!

干杯!


via: https://www.ostechnix.com/a-beginners-guide-to-cron-jobs/

作者:SK 选题:lujun9972 译者:KevinSJ 校对:wxy

cron 任务的典型格式是: 分钟(0-59) 小时(0-24) 日(1-31) 月(1-12) 星期(0-6) 要执行的命令的更多相关文章

  1. docker- 构建 oracle2c-r2(12.2.0.1) 的镜像

    需求 由于公司要数据库需要使用新的oracle版本(12c-r2 ->12.2.0.1),需要从之前的oracle11g迁移到12c.所以,我们今天就先来介绍一下如何构建oracle12c的镜像 ...

  2. Oracle 12c(12.1.0.5) oem agent silent install(静默安装agent)

    注释: 文章自oracle support 文档 ID 1360083.1,静默安装agent采用的是把OMS服务端(即oem server端)的agent用压缩包download,远程传到agent ...

  3. 【PTA】5-2 下列程序读入时间数值,将其加1秒后输出,时间格式为:hh: mm: ss,即“小时:分钟:秒”,当小时等于24小时,置为0。

    5-2 下列程序读入时间数值,将其加1秒后输出,时间格式为:hh: mm: ss,即"小时:分钟:秒",当小时等于24小时,置为0. #include <stdio.h> ...

  4. 在JS中,将text框中数据格式化,根据不同的小数位数,格式化成对应的XXX,XXX,XXX.XX(2位小数) 或者XXX,XXX,XXX(0位小数)

    //在JS中,将text框中数据格式化,根据不同的小数位数,格式化成对应的XXX,XXX,XXX.XX(2位小数) 或者XXX,XXX,XXX(0位小数) function formatNum(num ...

  5. Spring Security 5.0.x 参考手册 【翻译自官方GIT-2018.06.12】

    源码请移步至:https://github.com/aquariuspj/spring-security/tree/translator/docs/manual/src/docs/asciidoc 版 ...

  6. Linux crontab定时执行任务 命令格式与详细例子

    基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1-59 每分钟用*或者 */1表示 第2列表示小时1-23(0表示0点) 第3列表示日期1-31 第4列表示 ...

  7. Linux crontab定时执行任务命令格式与详细例子

    基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1-59 每分钟用*或者 */1表示 第2列表示小时1-23(0表示0点) 第3列表示日期1-31 第4列表示 ...

  8. Linux crontab定时执行任务 命令格式与详细例子(转)

    基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1-59 每分钟用*或者 */1表示 第2列表示小时1-23(0表示0点) 第3列表示日期1-31 第4列表示 ...

  9. js jq插件 显示中文时间戳 刚刚 N分钟前 N小时前 今天 上午 下午 日期格式化

    注:页面需提前引用JQ ; $.fn.extend({ /* ** notes: 获取13位时间戳的简单操作 ** new Date('2018-02-01 15:10:00').getTime() ...

随机推荐

  1. [Fundamental of Power Electronics]-PART I-2.稳态变换器原理分析-2.3 Boost 变换器实例

    2.3 Boost 变换器实例 图2.13(a)所示的Boost变换器器是另一个众所周知的开关模式变换器,其能够产生幅值大于直流输入电压的直流输出电压.图2.13(b)给出了使用MOSFET和二极管的 ...

  2. 【linux】驱动-11-gpio子系统

    目录 前言 11. gpio子系统 11.1 操作步骤 11.1.1 新版 API 操作流程 11.1.2 旧版 API 操作流程 11.2 设备树中使用gpio子系统 11.3 GPIO 子系统 A ...

  3. OO_Unit1_Summary

    经历了十分充实(痛不欲生)的三周不一样的码代码的生活,让我对通宵oo有了新的认识.往届学长学姐诚不欺我 第一次作业 需求分析 第一次需求非常简单(相比较后两次作业而言),仅为简单多项式求导,而且仅包含 ...

  4. oo第二单元——多线程魔鬼电梯

    在初步认识了面向对象思想后,立刻进入了多线程的学习,本单元的难点主要是锁的理解,需要保证线程安全的同时防止死锁的发生,也要尽可能缩小锁的范围,提高性能.这一单元以电梯为载体,让我们从生活出发,从电梯运 ...

  5. python3使用myqr生成链接二维码

    技术背景 二维码技术在各个领域中都已经有非常成熟的应用,比如随处可见的二维码支付,比如疫情期间的绿码,再比如工业领域中,可以使用二维码作为定位的标签,大大提升了室内定位技术的精确度.二维码的格式内容大 ...

  6. java 用枚举替换多if-else

    1.定义抽象类 package com.polaris.design; /** * @author :shi * @date :Created in 2020/8/18 20:15 * @descri ...

  7. rpm 和 yum 软件管理

    软件安装总结: 安装软件方式有如下几种: 方式1:编译安装 将源码程序按照需求进行先编译,后安装 缺点: 安装过程复杂,而且很慢 优点: 安装过程可控,真正的按需求进行安装(安装位置.安装的模块都可以 ...

  8. linux 在某个路径下,查找某个文件

    find /cephfs/netdisk/ -name "*.sql"

  9. Salesforce学习之路(九)Org的命名空间

    1. 命名空间的适用场景 每个组件都是命名空间的一部分,如果Org中设置了命名空间前缀,那么需使用该命名空间访问组件.否则,使用默认命名空间访问组件,系统默认的命名空间为"c". ...

  10. 789. Escape The Ghosts

    You are playing a simplified Pacman game. You start at the point (0, 0), and your destination is (ta ...