`
brandNewUser
  • 浏览: 446551 次
  • 性别: 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服务。

 

分享到:
评论

相关推荐

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

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

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

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

    操作系统安全:var spool cron.docx

    cron服务要通过命令启动和停止,在Linux上可以通过/etc/init.d/crond脚本启动或停止. cron的配置方式 编辑/var/spool/cron目录下文件 /var/spool/cron目录下cron文件 我们可以通过crontab命令来编辑操作/var/spool/...

    毕业设计定时任务管理系统/期末作业定时任务管理系统

    在任务节点上执行shell命令, 支持任务同时在多个节点上运行 HTTP任务 访问指定的URL地址, 由调度器直接执行, 不依赖任务节点 查看任务执行结果日志 任务执行结果通知, 支持邮件、Slack、Webhook 解压压缩包 cd ...

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

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

    操作系统安全:etc cron.docx

    cron服务要通过命令启动和停止,在Linux上可以通过/etc/init.d/crond脚本启动或停止. cron的配置方式 设置cron有两种方式,也就是编辑/var/spool/cron目录下文件和编辑/etc/crontab配置文件. 1)/var/spool/cron目录下...

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

    没有时间运行命令?使用 cron 的计划任务意味着你不用熬夜程序也可以运行。 系统管理员(在许多好处中)的挑战之一是在你该...cron 服务可以安排任务在一个周期上重复,比如天、周、或月。 在这篇文章中,我将介绍 cr

    gocron:定时任务管理系统

    gocron-定时任务管理系统项目简介使用Go语言开发的轻量级定时任务集中调度和管理系统,使用替代Linux-crontab的原有任务延时为拆分项目独立功能特性Web界面管理定时任务crontab时间表达式,精确到秒任务执行失败可重...

    Unix/Linux中Cron的用法

    cron是unix或者linux下用来定时任务的命令,大致的用法如下:  1、服务的启动和关闭  /sbin/service crond start //启动服务  /sbin/service crond stop //关闭服务  /sbin/service crond restart //重启...

    Linux网络操作系统基础:多任务管理.ppt

    守护进程(Daemon): Linux启动时初始化,后台进程 普通进程 常驻内存进程:系统或网络服务 启动: 手工启动: 前台启动 后台启动 调动启动: 调度安排进程的执行时间/场合 (命令或cron守护) 查看系统运行的进程 监测...

    Linux 命令?crontab: 任务调度

    cron 是一个 Linux 下的定时执行工具,可以在无需人工干预的情况下运行作业。守护进程 cron 会读取 crontab 文件,根据配置在指定的时间执行任务。  contab 命令用来添加、删除、显示 cron 任务表。  (Ubuntu ...

    linux系统日志解析

    linux系统日志解析,系统日志一般都存在/var/log下 常用的系统日志如下: 核心启动日志:/var/log/dmesg 系统报错日志:/var/log/messages 邮件系统日志:/var/log/maillog ...cron(定制任务日志)日志:/var/log/cron

    Linux Windows下设置定时执行任务的方法

    #/etc/init.d/cron start # 启动crontab服务 #/etc/init.d/cron stop # 停止crontab服务 #/etc/init.d/cron reload # 重载定时任务 #crontab -l # 查看定时任务列表 2.开启日志  需修改配置文件。 #sudo vim /etc/...

    linux中定时任务crond命令使用方法

    crond是linux用来定期执行命令或指定程序任务的一种服务。安装完操作系统后,默认会启动crond任务调度服务。crond服务会定期检查系统中是否有要执行的任务。如果有要执行的任务便会自动执行该任务。crond定时任务...

    Linux操作系统用crontab做定时关闭启动tomcat

    linux操作系统,制定定时任务步骤:  用ssh工具连接到系统后,执行如下步骤:  1)crontab -l 查看定时;  2)crontab -e 此时表示已可以编辑定时任务,但还没进入编辑模式;  3)再次输入i,进入编辑...

    Linux操作系统下各项服务的解释

     8、bootparamd:该服务允许老的Sun工作站从Linux网络启动,它和rarp现在很少使用,基本上被bootp和dhcp取代了。  9、crond:cron是Unix下的一个传统程序,该程序周期地运行用户调度的任务。比起传统的Unix版本,...

    操作系统安全:etc crontab.docx

    crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否...

    crontab定时任务不执行的一些原因总结

    crontab不是Linux内核的功能,而是依赖一个crond服务,这个服务可以启动当然也可以停止。如果停止了就无法执行任何定时任务了,解决的方法是打开它: crond 或 service crond start 如果提示crond命令不存在,可能...

    RED HAT LINUX 6大全

    14.8.1 在Linux客户上使用smbclient 252 14.8.2 在Linux客户上加载共享 253 14.8.3 在Windows客户上加载共享 253 14.9 公用smb.conf配置选项 253 14.9.1 特殊约定 254 14.9.2 read Only=Versus writeable=Versus ...

    shinybatch:R包可在R和Shiny中启动批处理任务

    在Linux / Mac中使用CRON并使用软件包cronR 在Windows中使用Windows Task Scheduler,使用包taskcheduleR 或直接用OS工具定义 安装 devtools :: install_github( " datastorm-open/shinybatch " ) 演示应用 run...

Global site tag (gtag.js) - Google Analytics