iis服务器助手广告广告
返回顶部
首页 > 资讯 > 操作系统 >Linux设置定时任务
  • 713
分享到

Linux设置定时任务

linux运维服务器 2023-08-20 20:08:50 713人浏览 独家记忆
摘要

linux设置定时任务 1. Crontab介绍2. crontab文件的含义3. 使用实例4. 搭配shell命令4.1 现在部署程序存在的问题4.2 解决办法 1. Crontab介绍 crond是linux下用来周期性

1. Crontab介绍

crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。
其中我们最常用到的命令是编辑定时任务crontab -e,以及crontab -l,查看定时任务

2. crontab文件的含义

用户所建立的crontab文件中,每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下:
minute hour day month week command
其中:

minute: 表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。

在这里插入图片描述

在以上各个字段中,还可以使用以下特殊字符:

  • 星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。
  • 逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”
  • 中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”
  • 正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

3. 使用实例

实例1:每1分钟执行一次command命令:* * * * * command
实例2:每小时的第3和第15分钟执行命令:3,15 * * * * command
实例3:在上午8点到11点的第3和第15分钟执行命令:3,15 8-11 * * * command
实例4:每隔两天的上午8点到11点的第3和第15分钟执行命令:3,15 8-11 */2 * * command
实例5:每天上午3点执行一次命令:* 3 * * * commend

4. 搭配shell命令

4.1 现在部署程序存在的问题

在执行程序的时候,我们往常是在程序中使用while True语句进行循环执行,同时也可以使用一些判断语句来达到定时任务的效果;但是在线上运行中,如果因为一些原因导致程序停止了运行,那么只能通过手动来重启。

4.2 解决办法

Shell脚本+crontab,我们可以用shell脚本在特定时间判断程序是否在运行,
在这里插入图片描述

其中第二个方框内 就是要执行的语句,nohup +& 可以做到只要你不使用kill命令杀死程序,电脑不关机,就可以一直在后台运行。

参考链接:https://www.runoob.com/linux/linux-comm-nohup.html
https://juejin.cn/post/6844903860272660494,

这时候我们在crontab中设置定时任务,设定在每天三点执行部署的程序,
使用命令:
crontab -e

  • 3 * * * /文件路径/程序名字 # 这里是在凌晨3点运行脚本
    30 3 * * * sh /路径/脚本名字 # 这里是在3点30分查看脚本是否还在执行,时间点的设置要根据自己程序的运行时间决定。

当然,如果你已经部署的程序里面使用了while True语句,那么你可以设置一个检查的时间,比如每周的周3 上午10点 检查程序的执行情况,
使用命令:
crontab -e
0 10 * * 3 sh /路径/脚本名字

脚本文字版

#! /bin/bash     proc_name="test.py"        #进程名   proc_num()                      #查询进程数量{    num=$(ps -ef | grep $proc_name | grep -v grep | wc -l)    return $num}   proc_numnumber=$?                       #获取进程数量if [ "$number"  -eq 0 ]            #如果进程数量为0then#重新启动服务器,或者扩展其它内容。    cd /home/scy    nohup python -u test.py >> test.log 2>&1 &fi

来源地址:https://blog.csdn.net/weixin_44513830/article/details/126684627

--结束END--

本文标题: Linux设置定时任务

本文链接: https://www.lsjlt.com/news/376626.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Linux设置定时任务
    Linux设置定时任务 1. Crontab介绍2. crontab文件的含义3. 使用实例4. 搭配shell命令4.1 现在部署程序存在的问题4.2 解决办法 1. Crontab介绍 crond是linux下用来周期性...
    99+
    2023-08-20
    linux 运维 服务器
  • linux怎么设置定时任务
    在Linux系统中,可以使用crontab命令来设置定时任务。1. 使用以下命令打开crontab编辑器:crontab -e2. ...
    99+
    2023-10-18
    linux
  • linux定时任务怎么设置
    在Linux中,可以使用cron命令来设置定时任务。 使用crontab -e命令来编辑定时任务: $ crontab -e ...
    99+
    2023-10-23
    linux
  • linux定时任务如何设置
    在Linux系统中,可以使用crontab命令来设置定时任务。1. 打开终端,输入以下命令以编辑当前用户的定时任务表:```cron...
    99+
    2023-08-17
    linux
  • 怎么在linux中设置定时任务
    怎么在linux中设置定时任务?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一,首先登录二,找到文件夹三,查看定时任务crontab -l四,vi root 编辑定时任务 编辑...
    99+
    2023-06-09
  • Centos7 设置定时任务
    配置定时任务 1. 下载定时任务依赖 yum install crontabs 2.设置为可用状态并启动 systemctl enable crondsystemctl start crond 如图所...
    99+
    2023-09-02
    服务器 linux 运维
  • CentOS7设置定时任务
    一.安装 crontabs服务并设置开机自启: yum install crontabs systemctl enable crond systemctl start crond123 二.设置用户自定义定时任务:...
    99+
    2022-06-04
    linux设置定时任务 linux定时任务时间设置 centos7 设置定时任务
  • 【MySQL-设置定时任务】
    在 MySQL 5.5 中,可以使用事件(Event)来创建定时任务。下面是一个例子,演示如何在 MySQL 5.5 中设置一个每天执行一次的定时任务: 首先,需要确保 MySQL 服务器启用了事件调度器(Event Scheduler)。...
    99+
    2023-08-16
    数据库 mysql
  • linux设置定时任务的方法步骤
    一,首先登录 二,找到文件夹 三,查看定时任务 crontab -l 四,vi root 编辑定时任务 编辑完成后,点ESC,然后:wq 时间格式 分钟 小时 日期 月份 周 命令 数字范围 0-59 0-23 1...
    99+
    2022-06-04
    linux设置定时任务 linux定时任务
  • 详解使用python crontab设置linux定时任务
    熟悉linux的朋友应该知道在linux中可以使用crontab设置定时任务。可以通过命令crontab -e编写任务。当然也可以直接写配置文件设置任务。 但是有时候希望通过脚本自动设置,比如我们应用程序部...
    99+
    2022-06-04
    详解 python linux
  • linux定时任务如何设置立刻生效
    要在Linux系统上立即生效定时任务,可以使用以下命令:1. 编辑定时任务:使用crontab命令编辑当前用户的定时任务列表。 &n...
    99+
    2023-08-17
    linux
  • Python3定时任务怎么设置
    在Python中,可以使用`schedule`模块来设置定时任务。以下是一个示例代码,演示如何每隔一分钟打印一次当前时间:```py...
    99+
    2023-08-17
    Python3
  • Linux Windows下设置定时执行任务的方法
    linux篇   Linux下创建定时执行任务可使用crontab,系统默认自带crontab,在Ubuntu 16.04下进行演示说明。 1.crontab 基本使用 #/etc/init.d/cron stat...
    99+
    2022-06-04
    linux 定时执行任务 linux 执行任务
  • java定时任务时间如何设置
    在Java中,可以使用java.util.Timer类或者java.util.concurrent.ScheduledExecuto...
    99+
    2023-10-09
    java
  • java定时任务时间怎么设置
    在Java中,可以使用`java.util.Timer`和`java.util.TimerTask`类来设置定时任务的时间。首先,创建一个继承自`TimerTask`的子类,重写`run()`方法,定义定时执行的任务。然后,创建一个`T...
    99+
    2023-08-11
    java
  • win10中如何设置定时任务
    这篇文章给大家分享的是有关win10中如何设置定时任务的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。win10设置定时任务的方法在Windows10桌面,右键点击此电脑图标,在弹出菜单中选择“管理”菜单项。然后在...
    99+
    2023-06-12
  • Linux centos下设置定时备份任务的方法步骤
    实现准备 # 需要备份文件路径:/opt/apollo/logs/access_log [root@localhost opt]# cd apollo/ [root@localhost apollo]# tree ...
    99+
    2022-06-04
    centos 定时备份 centos 定时备份任务
  • celery实现动态设置定时任务
    本文实例为大家分享了celery动态设置定时任务的具体代码,供大家参考,具体内容如下 首先celery是一种异步任务队列,如果还不熟悉这个开源软件的请先看看官方文档,快速入门。 这里...
    99+
    2022-11-11
  • 怎么在python中设置定时任务
    怎么在python中设置定时任务?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。python的数据类型有哪些python的数据类型:1. 数字类型,包括int(整型)、long(...
    99+
    2023-06-14
  • SpringBoot如何设置动态定时任务
    这篇文章主要介绍了SpringBoot如何设置动态定时任务的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇SpringBoot如何设置动态定时任务文章都会有所收获,下面我们一起来看看吧。之前写过文章记录怎么在Sp...
    99+
    2023-07-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作