`
brandNewUser
  • 浏览: 456968 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Linux上启动Cron任务

阅读更多

 

cron是一个Linux下的定时执行工具,无需人工干预,与quartz上的cron表达式稍有不同。由于cronLinux上的内置基础服务,并不是所有服务器都是默认启动该服务的,如果没有启动可以使用下面的命令:

 

sudo service cron restart/start/stop

 

 

使用命令crontab –l 可以显示出当前用户cron服务的详细内容。

 

使用命令crontab –e 可以打开默认的编辑当前用户cron服务的编辑器,这里假设使用一个最简单的shell

 

#!/bin/bash
echo “$(date +%Y-%m-%d\ %H:%M:%S)”

 

 

这个简单的shell只是会打印出当前时间,这也用于我们检测该命令是cron服务在什么时间调用的。

 

我们使用crontab –e 将这个命令加入

* * * * * cd /home/...; ./test_cron.sh >> /tmp/test_cron.log 2>&1

  

注意,最好将所有的输出都定向到指定的文件中(使用2>&1的方式可以将错误信息输出到同样的流中)。这样,本shell就会在每分钟都会执行一次。

 

Crontab中的设置

 

设置的前一部分是对时间的设定,后面一部分是要执行的命令。如果要执行的命令太多,可以把这些命令写到一个脚本里面,然后在这里直接调用这个脚本就可以了,调用的时候记得写出命令的完整路径,因为有些环境变量并不能带过来。时间的设定有一定的约定,前面五个*号代表五个数字,数字的取值范围和含义如下:

分钟 (0-59) 

小時 (0-23) 

日期 (1-31)
月份 (1-12) 

星期 (0-6)//0代表星期天

 

除了数字还有几个个特殊的符号就是"*""/""-"","*代表所有的取值范围内的数字,"/"代表每的意思,"*/5"表示每5个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字。以下举几个例子说明问题:

每天早上6

0 6 * * * echo "Good morning." >> /tmp/test.txt

 

每两个小时:

0 */2 * * * echo "Every 2 hours" >> /tmp/test.txt

 

晚上11点到早上8点之间每两个小时,早上八点

0 23-7/2,8 * * * echo "Have a good dream:)" >> /tmp/test.txt

 

每个月的4号和每个礼拜的礼拜一到礼拜三的早上11

0 11 4 * 1-3 command line

 

 

11日早上4

0 4 1 1 * command line

 

 

在每次编辑完某个用户的cron设置后,cron自动在/var/spool/cron下生成一个与此用户同名的文件,此用户的cron信息都记录在这个文件中,这个文件是不可以直接编辑的,只可以用crontab -e 来编辑。

 

cron启动后每过一份钟读一次这个文件,检查是否要执行里面的命令,因此此文件修改后不需要重新启动cron服务。

 

分享到:
评论

相关推荐

    linux 计划任务cron--怎么定时执行的指令

    Cron的主要配置文件位于`/etc/crontab`,此文件定义了系统的全局Cron任务。以下是对文件中关键行的解析: 1. `SHELL=/bin/bash`:指定了Cron作业的默认Shell环境。 2. `PATH=/sbin:/bin:/usr/sbin:/usr/bin`:定义...

    linux任务计划cron文档使用

    - **启动Cron服务**:`/sbin/service crond start` - **停止Cron服务**:`/sbin/service crond stop` - **重启Cron服务**:`/sbin/service crond restart` - **重载Cron服务**:`/sbin/service crond reload` 这些...

    win Cron定时任务

    本文将详细讲解如何在Windows中设置定时任务,以及与Linux中的Cron任务的异同。 首先,让我们了解什么是Cron。Cron是Unix/Linux系统中的一个守护进程,用于安排在未来特定时间执行命令或脚本。它通过配置cron表格...

    cron安装包

    安装这个包后,系统会启动cron服务,允许用户通过crontab命令设置定时任务。 **crontabs** crontabs组件则是用于管理和编辑用户crontab文件的工具。crontabs-1.11-2.20101115git.fc15.noarch.rpm这个文件是一个...

    基于workerman做的Linux定时任务控制台(比linux自带的cronjob增加秒级功能).zip

    基于workerman做的Linux定时任务控制台(比linux自带的cronjob增加秒级功能).zip 基于workerman做的定时任务控制台,Linux 定时任务控制,比linux自带的cronjob增加秒级功能。 运行环境 php >= 7.0 php扩展需要 pcntl...

    Linux操作系统定时任务系统 Cron 入门.pdf

    Linux 操作系统定时任务系统 Cron 入门 本篇文章主要介绍了 Linux 操作系统中的定时任务系统 Cron 入门知识点。Cron 是一个 Linux 下的定时执行工具,可以在无需人工干预的情况下运行作业。由于 Cron 是 Linux 的...

    Go-gocron-使用Go语言开发的轻量级定时任务集中调度和管理系统

    它提供了一个简单易用的API,可以方便地在Go应用中集成定时任务,且无需依赖外部的cron服务,如传统的Linux crontab。gocron的出现,使得开发者能够在不离开Go环境的情况下,享受到类似Unix cron的服务,提高了开发...

    linux cron 工作原理

    #### 三、Cron任务调度机制 Cron的服务最小检测时间单位是分钟,这意味着它会每隔一分钟检查一次`/var/spool/cron`和`/etc/crontab`目录中的数据内容,以便发现是否有新的或修改过的计划任务配置需要执行。 ##### ...

    linux下定时任务设置.docx

    Linux 操作系统提供了一个强大的定时任务设置机制,即 cron 服务。cron 服务允许用户设置在特定的时间或间隔执行特定的命令或脚本。下面将详细介绍 Linux 下定时任务设置的知识点。 一、创建 cron 任务 要创建 ...

    Linux操作系统定时任务系统 Cron 入门.docx

    Cron任务调度的工作分为两类:系统执行的工作,如定期备份数据或清理缓存;个人执行的工作,比如用户定期检查邮件。每个用户都可以通过`crontab -e`编辑属于自己的任务,而任务的执行时间则遵循一种特定的格式。这种...

    Linux下定时任务,命令启停jar包服务

    Linux 下的定时任务和 jar 包服务管理 Linux 作为一款流行的操作系统,提供了许多强大的功能,其中之一就是定时任务的管理。定时任务允许用户在指定的时间执行特定的命令或程序,从而实现自动化操作。在 Linux 中,...

    c++任务调度,支持cron表达式

    cron表达式是Unix/Linux系统中广泛使用的定时任务表达方式,用于定义周期性的任务执行时间。 Bosma::Scheduler库的设计可能包含以下几个核心概念: 1. **任务(Task)**:在Bosma::Scheduler中,任务是一个可执行...

    Linux操作系统定时任务系统Cron入门.docx

    为了使Cron服务在系统启动时自动启动,可以编辑`/etc/rc.d/rc.local`脚本,在文件末尾添加启动Cron的命令: ```bash /sbin/service crond start ``` Cron服务提供了`crontab`命令供用户使用,用于管理个人的定时任务...

    Linux操作系统定时任务系统Cron入门.pdf

    Linux 操作系统定时任务系统 Cron 入门 Cron 是一个 Linux 下的定时执行工具,可以在无需人工干预的情况下运行作业。由于 Cron 是 Linux 的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务: * /...

    Cron定时任务Linux总结.docx

    Cron 是 Linux 和 Unix 操作系统中的一个守护进程(后台服务),用于调度周期性任务。通过 cron,用户可以设定定时执行的命令,这些命令将在特定的时间点自动运行。 #### 二、Cron定时任务的基本配置 Cron 的配置...

    cron -- windows 下的定时任务程序

    比如我们可以在配置文件中约定每天早上4点,对httpd 服务器重新启动,这就是一个计划任务; cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业 此版本为windows下的应用。配置格式相同。

    详解在Linux中怎么使用cron计划任务

    要配置cron任务,你需要使用 `crontab` 命令。这个命令可以用来列出、编辑或删除用户当前的cron表。例如,`crontab -e` 命令会打开一个编辑器(默认是Vi或Vim),让你编辑cron文件。在cron文件中,每一行代表一个...

    浅谈:linux cron 计划任务常用符号小结

    当使用`crontab -e`编辑用户的cron任务时,实际上是在编辑这个目录下对应的文件。 输出重定向是cron任务中常见的需求。标准输出(stdout)代码为1,标准错误输出(stderr)代码为2。例如,`>/dev/null 2>&1`会把...

    crontab执行时间与系统时间不一致问题解决

    在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。 cron的配置文件称为“crontab”,是“cron table”的简写。 ...

Global site tag (gtag.js) - Google Analytics