crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。该词来源于希腊语chronos(χρόνος),原意是时间。在linux同样也有这个命令,它相当于windows的计划任务。
crontab每秒执行,crontab以秒执行,cron running every second,cron running every second
我们在linux中可以使用 crontab -e 命令编辑 crontab 的配置文件设定任务。如图,其格式为:“m h dom mon dow command ”。我们看到这个格式中的最小颗粒是分钟,而不是second。我们无法在crontab配置中直接将命令精确到秒,但是可以在command中设定sleep时间来跳过几秒,从而达到按秒执行的目的。如
*/1 * * * * sh /root/cron.sh
*/1 * * * * sleep 30 && sh /root/cron.sh
# 每分钟执行两次 每隔30秒执行一次
扩展阅读:
Shell && 和 ||
shell 在执行某个命令的时候,会返回一个返回值,该返回值保存在 shell 变量 $? 中。当 $? == 0 时,表示执行成功;当 $? == 1 时,表示执行失败。
有时候,下一条命令依赖前一条命令是否执行成功。如:在成功地执行一条命令之后再执行另一条命令,或者在一条命令执行失败后再执行另一条命令等。shell 提供了 && 和 || 来实现命令执行控制的功能,shell 将根据 && 或 || 前面命令的返回值来控制其后面命令的执行。&&(命令执行控制)
语法格式如下:
command1 && command2 [&& command3 …]
1 命令之间使用 && 连接,实现逻辑与的功能。
2 只有在 && 左边的命令返回真(命令返回值 $? == 0),&& 右边的命令才会被执行。
3 只要有一个命令返回假(命令返回值 $? == 1),后面的命令就不会被执行。||(命令执行控制)
语法格式如下:
command1 || command2 [|| command3 …]
1 命令之间使用 || 连接,实现逻辑或的功能。
2 只有在 || 左边的命令返回假(命令返回值 $? == 1),|| 右边的命令才会被执行。这和 c 语言中的逻辑或语法功能相同,即实现短路逻辑或操作。
3 只要有一个命令返回真(命令返回值 $? == 0),后面的命令就不会被执行。shell 提供了两种方法(() 和 {})实现将几个命令合作一起执行,代替独立执行。这种方式并不能控制命令是否需要执行,仅是将多个单独的命令组合在一起执行,最终命令的返回值将由最后一条命令的返回值来决定。
() (命令组合)
语法格式如下:
(command1;command2[;command3…])
1 一条命令需要独占一个物理行,如果需要将多条命令放在同一行,命令之间使用命令分隔符(;)分隔。执行的效果等同于多个独立的命令单独执行的效果。
2 () 表示在当前 shell 中将多个命令作为一个整体执行。需要注意的是,使用 () 括起来的命令在执行前面都不会切换当前工作目录,也就是说命令组合都是在当前工作目录下被执行的,尽管命令中有切换目录的命令。
3 命令组合常和命令执行控制结合起来使用。
附:常用时间设定
0 * * * * command
# 每月每天每小时的第 0 分钟执行一次 command
0,20,40 * * * * command
# 每月每天每小时的第 0,20,40分钟执行一次 command
*/1 * * * * command
# 每隔1分钟执行一次 command
*/5 * * * * command
# 每隔5分钟执行一次 command
*5 * * * * command
# 每月每天每小时的第 5,15,25,35,45,55分钟执行一次 command
*/20 6-11 * 12 * command
# 在 12 月内, 每天的早上 6 点到 12 点中,每隔 20 分钟执行一次 command
原来如此,一直以为最低频率是一分钟……
完全看不懂节奏
滚…你会看不懂…
不用排的这么整齐…
楼上的注意队列crontab这个真的没接触过
用时看一遍就会的东西…
至于说的这么深奥么?
用的时候会用,看不懂的是语法
表示完全看不懂。
crontab 就是类似于 windows 下的任务计划
我在 VPS 上用它来干定时采集的事儿
恩,采集啊,没反代轻松!
我说看着咋这么熟呢 原来是linux 嘿嘿 看来也不是把学的都还给老师了 💡
太深奥了,是程序吗,还是C语言之类的呢
shell语言
很简单的
看不懂 什么意思
不是有扩展阅读么?
看不懂啊看不懂。
你这个和朋朋的主题是一样的,不过留言板比他的好看。这留言板是什么的?
默认的…
我改的是EMLOG的,有点不兼容呢!
根本看不懂!
一样呀
呃…
博主不用为 额这样的菜鸟纠结
…
其实很多时候都起不到作用
每次都起作用了啊
设置或命令问题吧
你有多少VPS了,可以做个集群!
8个吧
擦…维护麻烦
而且不知道干嘛
– -好吧,又是一个挂vagex的。。话说现在挂这玩意还能弄到多少?
没多少…甚至我的话回不了本
但没办法
看到便宜的vps就入手…之后才发现没什么用
你用来做什么了?怎么觉得定时任务一般没什么用一样……
每隔4小时重启vnc,之后20s确认vnc已启动
挂vagex…完全无人管理