当前位置:首页 > 软件开发 > 正文

crontab每30秒执行一次(每5分钟运行一次cron)

crontab每30秒执行一次(每5分钟运行一次cron)

大家好,今天来为大家分享crontab每30秒执行一次的一些知识点,和每5分钟运行一次cron的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章...

大家好,今天来为大家分享crontab每30秒执行一次的一些知识点,和每5分钟运行一次cron的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!

Linuxcrontab定时执行任务命令格式与详细例子

基本格式:

*****command

分时日月周命令

第1列表示分钟1~59每分钟用*或者*/1表示

第2列表示小时1~23(0表示0点)

第3列表示日期1~31

第4列表示月份1~12

第5列标识号星期0~6(0表示星期天)

第6列要运行的命令

crontab文件的一些例子:

3021***/usr/local/etc/rc.d/lighttpdrestart

上面的例子表示每晚的21:30重启apache。

4541,10,22**/usr/local/etc/rc.d/lighttpdrestart

上面的例子表示每月1、10、22日的4:45重启apache。

101**6,0/usr/local/etc/rc.d/lighttpdrestart

上面的例子表示每周六、周日的1:10重启apache。

0,3018-23***/usr/local/etc/rc.d/lighttpdrestart

上面的例子表示在每天18:00至23:00之间每隔30分钟重启apache。

023**6/usr/local/etc/rc.d/lighttpdrestart

上面的例子表示每星期六的11:00pm重启apache。

**/1***/usr/local/etc/rc.d/lighttpdrestart

每一小时重启apache

*23-7/1***/usr/local/etc/rc.d/lighttpdrestart

晚上11点到早上7点之间,每隔一小时重启apache

0114*mon-wed/usr/local/etc/rc.d/lighttpdrestart

每月的4号与每周一到周三的11点重启apache

041jan*/usr/local/etc/rc.d/lighttpdrestart

一月一号的4点重启apache

名称:crontab

使用权限:所有使用者

使用方式:

crontabfile[-uuser]-用指定的文件替代目前的crontab。

crontab-[-uuser]-用标准输入替代目前的crontab.

crontab-1[user]-列出用户目前的crontab.

crontab-e[user]-编辑用户目前的crontab.

crontab-d[user]-删除用户目前的crontab.

crontab-cdir-指定crontab的目录。

crontab文件的格式:MHDmdcmd.

M:分钟(0-59)。

H:小时(0-23)。

D:天(1-31)。

m:月(1-12)。

d:一星期内的天(0~6,0为星期天)。

cmd要运行的程序,程序被送入sh执行,这个shell只有USER,HOME,SHELL这三个环境变量

说明:

crontab是用来让使用者在固定时间或固定间隔执行程序之用,换句话说,也就是类似使用者的时程表。-uuser是指设定指定

user的时程表,这个前提是你必须要有其权限(比如说是root)才能够指定他人的时程表。如果不使用-uuser的话,就是表示设

定自己的时程表。

参数:

crontab-e:执行文字编辑器来设定时程表,内定的文字编辑器是VI,如果你想用别的文字编辑器,则请先设定VISUAL环境变数

来指定使用那个文字编辑器(比如说setenvVISUALjoe)

crontab-r:删除目前的时程表

crontab-l:列出目前的时程表

crontabfile[-uuser]-用指定的文件替代目前的crontab。

时程表的格式如下:

f1f2f3f4f5program

其中f1是表示分钟,f2表示小时,f3表示一个月份中的第几日,f4表示月份,f5表示一个星期中的第几天。program表示要执

行的程序。

当f1为*时表示每分钟都要执行program,f2为*时表示每小时都要执行程序,其馀类推

当f1为a-b时表示从第a分钟到第b分钟这段时间内要执行,f2为a-b时表示从第a到第b小时都要执行,其馀类推

当f1为*/n时表示每n分钟个时间间隔执行一次,f2为*/n表示每n小时个时间间隔执行一次,其馀类推

当f1为a,b,c,...时表示第a,b,c,...分钟要执行,f2为a,b,c,...时表示第a,b,c...个小时要执行,其馀类推

使用者也可以将所有的设定先存放在档案file中,用crontabfile的方式来设定时程表。

例子:

#每天早上7点执行一次/bin/ls:

07***/bin/ls

在12月内,每天的早上6点到12点中,每隔3个小时执行一次/usr/bin/backup:

06-12/3*12*/usr/bin/backup

周一到周五每天下午5:00寄一封信给alex@domain.name:

017**1-5mail-s"hi"alex@domain.name</tmp/maildata

每月每天的午夜0点20分,2点20分,4点20分....执行echo"haha"

200-23/2***echo"haha"

注意:

当程序在你所指定的时间执行后,系统会寄一封信给你,显示该程序执行的内容,若是你不希望收到这样的信,请在每一行空一格之

后加上>/dev/null2>&1即可

例子2:

#每天早上6点10分

106***date

#每两个小时

0*/2***date

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

023-7/2,8***date

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

0114*mon-weddate

#1月份日早上4点

041jan*date

范例

$crontab-l列出用户目前的crontab

crontab管理工具

Crontab管理工具是Linux平台下的一款用于循环执行例行任务的工具,Linux系统由cron(crond)这个系统服务来控制任务,Linux系统本来就有很多的计划任务需要启动,所以这个系统服务是默认开机启动的。Linux为使用者提供的计划任务的命令就是Crontab,是Linux下用来周期性执行任务或者等待处理某些事情的。

linux中执行crontab定时任务时无法连接sybase iq15.1数据库,shell脚本中的sybase iq的环境变量怎么设置

在执行dbisql-c"uid=DBA;pwd=sql"-host192.168.0.34-port2638/home/gjt/query.sqlquery.sql这句话前面,先加载上sybase用户的环境变量。source$SYBASE/SYBASE.sh

如何在Linux上定期定期执行命令、脚本(cron、crontab、anacron)

在Linux上执行定时任务的场景还是很多的,比如说我们要:

定时进行日志文件切割;

定时同步服务时间;

定时备份重要数据;

定时执行任务等。

Linux服务器上要实现定时任务,方式有很多,比如说:cron、anacron、sleep等。那这几种之间有何区别及该选哪种呢,结合我的经验谈谈我的看法以供大家参考。

1、cron(crond)

crond是Linux自带的一个守护进程,利用它来重复执行指定的任务,时间周期可以按分钟、小时、天、月、周来执行,现实我们主要也就是靠它来执行定时任务。

这里需要注意的是,crontab是crond进程依懒的任务列表文件(对应配置文件在:/etc/crontab中,不过系统中也有crontab命令,通过这个命令我们可以编辑任务清单),我们将定时任务记录在crontab中,任务的执行靠的还是crond守护进程。

2、anacron

anacron(对应配置文件在:/etc/anacrontab中)可以理解为是cron的一种补充,但两者定位不同。cron定位是7x24小时不间断的计划任务执行者,而anacron是用来处理非7x24小时运行的Linux系统上的crontab的。有点绕口,简单说就是,假设一台服务器每周六周日是关闭的,而crontab中有几条是在周六周日执行的,此时anacron就能发挥作用了。anacron在启动后会去检查关机期间哪些任务应该执行却没有执行到的crontab任务,找到这些任务,执行完,然后anacron就停止了。

其实anacron依懒于crontab,anacron能执行也是靠crontab来运行的。

anacron对于一般用户基本上用不到!

3、sleep

还有一种方案是通过sh脚本来执行while(true)+sleep操作,以此来模拟定时任务。这种常见于一些PHP脚本模拟“守护进程”效果,执行完一段代码后,休眠指定时间后再次执行。

综上,在实际操作中,我们实现定时任务99%的情况下都是通过crontab这个命令和/etc/crontab这个文件来设置定时任务的,而定时任务的执行是由Linux自带的crond守护进程来执行的。

以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流~我是科技领域创作者,十年互联网从业经验,欢迎关注我了解更多科技知识!

centos7如何设置定时关机

在CentOS7中,您可以使用以下方法设置定时关机:

1.打开终端,输入以下命令来编辑计划任务:

```

crontab-e

```

2.在打开的编辑器中,添加以下行来设置定时关机:

```bash

@reboot/usr/bin/sh/path/to/your/script.sh

```

3.将`/path/to/your/script.sh`替换为您要使用的脚本的完整路径。

4.保存并关闭编辑器。

5.打开终端,输入以下命令来运行计划任务:

```

crontab-l

```

6.如果您想测试脚本是否正常工作,可以运行以下命令:

```bash

/path/to/your/script.sh

```

注意:确保您在脚本中设置了正确的关机命令。在CentOS7中,您可以使用`shutdown`命令来关机,例如:

```bash

#!/bin/bash

shutdown-h+10"Scheduledshutdown"

```

上述脚本将在10分钟后关机,并显示一条消息,说明这是计划关机。

请注意,设置定时关机可能存在风险,请确保您知道自己在做什么,并备份所有重要数据。

crontab时间格式的问题:001,15*1/bin/cp-R/ect/ectbak时间“001,15*1”这个怎么理解

第一个0表示每小时的0分第二个0表示每天的00:00第三个1,15表示每个月的1号和15号第四个*表示每个月第五个1表示周1就是如果当月1号或15号是周1的时候执行/bin/cp-R/ect/ectbak

关于本次crontab每30秒执行一次和每5分钟运行一次cron的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。

最新文章