(7)定时任务

7)定时任务

程序:我们使用的命令就是程序。程序放在磁盘中。

进程:

就是指系统中正在执行的程序。放在内存中。

每个进程启动时,系统会指定一个唯一的数字给每个进程,数值称为进程(ID

每个进程都可能以两种方式存在:前台和后台。


crond

linux系统中用来定期执行命令或者指定程序任务的一种服务或者软件。


crond 服务默认情况(每分钟),会检查系统中是否有需要执行的定时任务,

如果有,就会根据事先定义好的规则来执行这个定时任务。


秒级任务

1crond 无能为力可以通过方法来改进。

2)需要自己写守护进程shell循环


linux定时任务分类:

1)系统自身的定期任务的执行

2)用户执行的定时任务


linux定时任务分类

aat 适合执行一次就结束的调度任务,依赖于atd服务,不常用。

banacron 适合于非7*24小时开机的服务器准备的,开机执行的,

检测停机期间没有执行的任务,在开机后一次性执行一遍。


ccrond crond 服务默认情况每分钟,会检查系统中是否需要有执行

的定时任务,如果有就会根据事先定义好的规则来执行定时任务。

依赖的服务有crond

注: crond 是一个定时任务守护进程

crontab 是用户用来设置定时任务规则的命令



crontab:

crontab -l 查看crontab的文件内容

crontab -e 编辑crontab文件内容

crontab -l | -e}实际上就是在操作 varspoolcron root [当前用户名 ])

所以:

crontab -l   === cat /var/spool/cron/root

crontab -e ===  vi /var/spool/cron/root


默认情况下,当用户建立定时任务规则后,该规则记录对应的配置文件会存在于

varspoolcron 中,其crontab 配置文件对应的文件名与登陆的用户名一致,

root 用户的定时任务配置文件为 varspoolcronroot


定时任务的指令使用格式:

用户的定时任务规则一般分为6个段(每个段通过空格来分隔,系统的定时任务为/etccrontab

分为7段,空格来分隔),前五段为时间的设定段,第6段为所要执行的命令或者脚本任务段。

用户的定时任务:

cmd

cmd

0-59 0-23 01-31 01-12 0-7


符号定义:

号: 就是每的意思,表示任意时间都。

    00 23 cmd :表示每天的 23:00 都执行cmd任务

定时任务规则如果到小时,就表示每天执行 cmd 任务

分位上的 等价于 0-59

号:表示分隔符,表示时间范围

00 17-19 cmd :表示每天晚上 171819整点分别执行的意思。

,号:  表示分隔时段的意思

30 171819 binshscriptsoldboy.sh

表示 每天171819点的半点时刻执行 /bin/sh/scripts/oldboy.sh 的脚本

n    表示 每隔n单位时间

/10 :表示每隔10分钟执行一次任务。


systemctl vs  chkconfig

http://www.maybe520.net/blog/1865/


注:周和日尽量不要同时用

例子:

每分钟打一次名字的全拼到 某个文件中

1)crontab -e   (编辑 /var/spool/cron/root[当前用户])

添加:

# print a name

* * * * * echo old boy >> /server/log/oldboy.log > /dev/null 2>&1 

注:/dev/null 2>&1  等价于   1>/dev/null 2>/dev/null

将标准输出和错误输出到黑洞

2)创建目录

mkdir-p /server/log/

3)监视

tail -f /server/log/oldboy.log


系统的定时任务:

# Example of job definition:

# .---------------- minute (0 - 59)

# |  .------------- hour (0 - 23)

# |  |  .---------- day of month (1 - 31)

# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...

# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

# |  |  |  |  |

# *  *  *  *  * user-name  command to be executed

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
配置定时任务的步骤如下: 1. 首先,需要安装crontabs依赖,可以使用命令`yum install crontabs`进行安装。 2. 然后,需要将crond服务设置为可用状态并启动,可以使用命令`systemctl enable crond`和`systemctl start crond`来实现。 3. 接下来,使用crontab工具来管理定时任务列表。crontab一个用来定制计划任务的工具,可以通过启动crond服务(系统默认安装)来实现。 4. 在Linux系统中,定时任务的配置文件有三个地方,分别是/etc/crontab、/etc/cron.d目录下的所有文件以及每个用户的配置文件一般位于/var/spool/cron目录下。当系统每分钟检查是否有要执行的任务时,它会读取这些配置文件中的内容。 所以,在CentOS 7上配置定时任务的步骤包括安装crontabs依赖、启动crond服务以及使用crontab工具来管理定时任务列表。同时,定时任务的配置文件位于/etc/crontab、/etc/cron.d目录和/var/spool/cron目录中。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Centos7 设置定时任务](https://blog.csdn.net/weixin_38565317/article/details/127039873)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Linux(CentOS7)定时执行任务Crond详细说明&操作图解](https://blog.csdn.net/zhanhjxxx/article/details/122810322)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值