阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

cronatab周期性任务定时计划器

86次阅读
没有评论

共计 1378 个字符,预计需要花费 4 分钟才能阅读完成。

cronatab 周期性任务定时计划器

要执行周期性任务,要保证服务运行。服务名为 crond;service crond start ; systemctl start crond;

配置文件

/etc/crontab

cron 的日志文件

cat /var/log/cron

简介

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

任务调度的分类

Linux 下的任务调度分为两类,系统任务调度和用户任务调度。

系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等。在 /etc 目录下有一个 crontab 文件,这个就是系统任务调度的配置文件。

系统任务调度

通过编辑配置文件 /etc/crontab,以下图的格式标明需要运行的时间即可。一行对应一个任务,格式如下图。
cronatab 周期性任务定时计划器

用户任务调度

在当前用户下使用命令 crontab -e,会以当前用户的身份建立任务调度。与系统任务调度文件格式不同的是不需要指名以哪个用户的身份运行。
cronatab 周期性任务定时计划器

时间表示

指定值:指定具体的数字

范围值:* 表示每,每到这这个时间段执行一次任务。

离散取值:10 2,3,4 * * *;每天的 2,3,4 点的 10 分执行一次。(总共执行了 3 次)

连续范围:10 2-10 * * *;每天的 2 点 10 分到 10 点 10 分分别执行 (总共执行了 8 次)

步长范围:/3 * *;每分钟内执行 3 次 (即每 20 秒执行一次)

举例:

10 10 /6 * *;每 6 天的 10 点 10 分执行一次任务

日期与星期

10 10 1-10 * 0,6 #每个月的 1 -10 号的 10 点 10 分,或者周六日的 10 点 10 分都执行

举例:

1 1 /6 * root echo “hello word ”;每隔 6 天的 1 点 1 分执行一次任务。

1 1-10/3 * * * root echo“hello word”;在每天 1 -10 点范围内每 3 小时内的第一分钟执行一次

创建周期性任务

crontab -e

* * * * * /bin/echo “`date +\%F \%H:\%M:\%S`”

# 命令要写绝对路径。除非标明变量

# 如果在用户下新建 crontab 的话 % 需要转义

创建时的其他设置

创建周期性任务时,默认的编辑器为 vi 所以没有语法高亮。可以通过以下办法将默认编辑器修改为 vim

# 写入 /etc/porfile.d 对所有用户生效

# 写入~/bash_profile 对当前用户

export EDITOP=vim

创建任务的权限

允许指定用户创建任务

cat /etc/cron.deny #在文件内写入用户名,使其不能创建新任务,但已创建的依然会执行

拒绝指定用户创建任务

cat /etc/cron.allow #默认文件不存在

允许与拒绝优先级

如果 allow 文件存在,那么 deny 文件不生效。

如果 allow 为空,拒绝所有用户

如果 allow、deny 都不存在,任何用户不能创建计划任务

实现毫秒、秒级别的周期性任务

利用 usleep 实现微妙级别的运行

usleep 1000000;1 秒

usleep 1000;1 毫秒

usleep 1;1 微秒

利用循环体加 sleep 实现秒级别的。在每分钟要执行的任务中 sleep20 秒。
cronatab 周期性任务定时计划器

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-24发表,共计1378字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中