Cron 任务入门指南
Cron 是您可以在任何类 Unix 操作系统中找到的最有用的实用程序之一。它用于安排命令在特定时间执行。这些预定的命令或任务被称为 “Cron 任务”。Cron 通常用于运行计划备份、监视磁盘空间、定期删除不再需要的文件(例如日志文件)、运行系统维护任务等等。在本简要指南中,我们将看到 Linux 中 Cron 任务的基本用法。
Cron 任务入门指南
cron 任务的典型格式是:
分钟(0-59) 小时(0-24) 日(1-31) 月(1-12) 星期(0-6) 要执行的命令
只需记住 cron 任务的格式或打印下面的插图并将其放在你桌面上即可。
在上图中,星号表示特定的时间块。
要显示当前登录用户的 crontab 文件的内容:
$ crontab -l
要编辑当前用户的 cron 任务,请执行以下操作:
$ crontab -e
如果这是第一次编辑此文件,会询问你使用哪个编辑器来编辑此文件。
no crontab for sk - using an empty one
Select an editor. To change later, run 'select-editor'.
1. /bin/nano <---- easiest
2. /usr/bin/vim.basic
3. /usr/bin/vim.tiny
4. /bin/ed
Choose 1-4 [1]:
选择适合你的编辑器。这里是一个示例 crontab 文件的样子。
在这个文件中,你需要添加你的 cron 任务。
要编辑其他用户的 crontab,例如 ostechnix,请执行:
$ crontab -u ostechnix -e
让我们看看一些例子。
要 每分钟 执行一次 cron 任务,需使用如下格式。
* * * * * <command-to-execute>
要每 5 分钟运行一次 cron 任务,请在 crontab 文件中添加以下内容。
*/5 * * * * <command-to-execute>
要在每 1/4 个小时(每 15 分钟)运行一次 cron 任务,请添加以下内容:
*/15 * * * * <command-to-execute>
要每小时的第 30 分钟运行一次 cron 任务,请运行:
30 * * * * <command-to-execute>
您还可以使用逗号定义多个时间间隔。例如,以下 cron 任务每小时运行三次,分别在第 0、 5 和 10 分钟运行:
0,5,10 * * * * <command-to-execute>
每半小时运行一次 cron 任务:
*/30 * * * * <command-to-execute>
每小时运行一次:
0 * * * * <command-to-execute>
每 2 小时运行一次:
0 */2 * * * <command-to-execute>
每天运行一项(在 00:00 运行):
0 0 * * * <command-to-execute>
每天凌晨 3 点运行:
0 3 * * * <command-to-execute>
每周日运行:
0 0 * * SUN <command-to-execute>
或使用,
0 0 * * 0 <command-to-execute>
它将在每周日的午夜 00:00 运行。
星期一至星期五每天运行一次,亦即每个工作日运行一次:
0 0 * * 1-5 <command-to-execute>
这项工作将于 00:00 开始。
每个月运行一次:
0 0 1 * * <command-to-execute>
于每月第 1 天的 16:15 运行:
15 16 1 * * <command-to-execute>
每季度运行一次,亦即每隔 3 个月的第 1 天运行:
0 0 1 */3 * <command-to-execute>
在特定月份的特定时间运行:
5 0 * 4 * <command-to-execute>
每个四月的 00:05 运行。
每 6 个月运行:
0 0 1 */6 * <command-to-execute>
这个定时任务将在每六个月的第一天的 00:00 运行。
每年运行:
0 0 1 1 * <command-to-execute>
这项 cron 任务将于 1 月份的第一天的 00:00 运行。
我们也可以使用以下字符串来定义任务。
@reboot
在每次启动时运行一次。 @yearly
每年运行一次。 @annually
(和 @yearly
一样)。 @monthly
每月运行一次。 @weekly
每周运行一次。 @daily
每天运行一次。 @midnight
(和 @daily
一样)。 @hourly
每小时运行一次。
例如,要在每次重新启动服务器时运行任务,请将此行添加到您的 crontab 文件中。
@reboot <command-to-execute>
要删除当前用户的所有 cron 任务:
$ crontab -r
还有一个名为 crontab.guru 的专业网站,用于学习 cron 任务示例。这个网站提供了很多 cron 任务的例子。
有关更多详细信息,请查看手册页。
$ man crontab
那么,就是这样。到此为止,您应该对 cron 任务以及如何实时使用它们有了一个基本的了解。后续还会介绍更多的优秀工具。敬请关注!!
Cron 任务入门指南的更多相关文章
- Quartz入门指南
Quartz入门指南 看到官网的教程对于新手来说不够全面和连贯,因此结合自己的使用过程写下这个入门指南,用以解惑.本文基于Quartz2.2.2版本.请注意,本文为了易于上手,省略了许多重要的概念,建 ...
- 张高兴的 .NET IoT 入门指南:(七)制作一个气象站
距离上一篇<张高兴的 .NET Core IoT 入门指南>系列博客的发布已经过去 2 年的时间了,2 年的时间 .NET 版本发生了巨大的变化,.NET Core 也已不复存在,因此本系 ...
- Web API 入门指南 - 闲话安全
Web API入门指南有些朋友回复问了些安全方面的问题,安全方面可以写的东西实在太多了,这里尽量围绕着Web API的安全性来展开,介绍一些安全的基本概念,常见安全隐患.相关的防御技巧以及Web AP ...
- Vue.js 入门指南之“前传”(含sublime text 3 配置)
题记:关注Vue.js 很久了,但就是没有动手写过一行代码,今天准备入手,却发现自己比菜鸟还菜,于是四方寻找大牛指点,才终于找到了入门的“入门”,就算是“入门指南”的“前传”吧.此文献给跟我一样“白痴 ...
- yii2实战教程之新手入门指南-简单博客管理系统
作者:白狼 出处:http://www.manks.top/document/easy_blog_manage_system.html 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文 ...
- 【翻译】Fluent NHibernate介绍和入门指南
英文原文地址:https://github.com/jagregory/fluent-nhibernate/wiki/Getting-started 翻译原文地址:http://www.cnblogs ...
- ASP.NET MVC 5 入门指南汇总
经过前一段时间的翻译和编辑,我们陆续发出12篇ASP.NET MVC 5的入门文章.其中大部分翻译自ASP.NET MVC 5 官方教程,由于本系列文章言简意赅,篇幅适中,从一个web网站示例开始讲解 ...
- 一起学微软Power BI系列-官方文档-入门指南(1)Power BI初步介绍
我们在前一篇文章微软新神器-Power BI,一个简单易用,还用得起的BI产品中,我们初步介绍了Power BI的基本知识.由于Power BI是去年开始微软新发布的一个产品,虽然已经可以企业级应用, ...
- 一起学微软Power BI系列-官方文档-入门指南(2)获取源数据
我们在文章: 一起学微软Power BI系列-官方文档-入门指南(1)Power BI初步介绍中,我们介绍了官方入门文档的第一章.今天继续给大家介绍官方文档中,如何获取数据源的相关内容.虽然是英文,但 ...
随机推荐
- Python使用sql语句对mysql数据库多条件模糊查询
1 def find_worldByName(c_name,continent): 2 print(c_name) 3 print(continent) 4 sql = " SELECT * ...
- python基础(五):列表的使用(上)
什么是列表 列表是一系列元素,按特定顺序排列组成.列表总的元素之间没有任何关系,既可以时字符串,也可以是数字,还可以是布尔值. 由此可以看出,列表通常包含多个元素,因此再给列表命名的时候,最好使用复数 ...
- 【Java】 6.0 输入,输出和异常处理
[概述] 就目前而言,我们遇到的"输出"无非就是这个比: System.out.println() 更详细的输入输出会在IO中提到,那么这个笔记就是记录几种常用输入机制 [Scan ...
- 通过Dapr实现一个简单的基于.net的微服务电商系统(四)——一步一步教你如何撸Dapr之订阅发布
之前的章节我们介绍了如何通过dapr发起一个服务调用,相信看过前几章的小伙伴已经对dapr有一个基本的了解了,今天我们来聊一聊dapr的另外一个功能--订阅发布 目录:一.通过Dapr实现一个简单的基 ...
- Vue3 封装第三方组件(一)做一个合格的传声筒
各种UI库的功能都是非常强大的,尤其对于我这种不会 css 的人来说,就更是帮了大忙了. 只是嘛,如果再封装一下的话,那么用起来就会更方便了. 那么如何封装呢? 封装三要素 -- 属性.插槽.事件.方 ...
- Ambassador-06-金丝雀部署
金丝雀部署:Canary Releases ambassador使用加权循环,在多个服务之间路由流量.收集所有服务的完整指标,以便比较canary和production的相对性能.这个weight的值 ...
- EasyCode Entity 实体类模板 IDEA
自己修改了一份EasyCode的实体类模板,防止日后找不到在这里存一下 修改了如下内容: 取消生成GetSet方法,改用Lombok 修改默认命名规则,改为[表名Entity.java] 取消了实现序 ...
- Django--虚拟环境、项目和应用的创建
第一点:官方手册 -- https://yiyibooks.cn/ 第二点:运行环境 -- django项目采用虚拟运行环境 之前我们pip install都是在Python的安装目录(底层)上安装的 ...
- git平时用到的仓库
github茫茫仓库 若水三千,取一瓢饮 doocs/technical-books doocs/leetcode lepture/editor pandao/editor.md 未完..待续!!积累 ...
- 技术面试问题汇总第004篇:猎豹移动反病毒工程师part4
这次所讨论的三个问题,比如DLL以及HOOK,很容易被病毒木马所利用,因此必须要比较全面地进行了解.而异常处理机制,则往往与漏洞相关联.它们自身的概念并不难理解,只是由之引申而来的问题,在计算机安全领 ...