这周要做一个定时增量更新Elasticsearch索引的功能,以前没有做过定时更新,所以请教了下同事,使用crontab添加linux下的定时任务。

一、linux下定时执行任务的方法

在linux中你应该先输入crontab -e,然后就会有个vi编辑界面,再输入0 3 * * 1 /clearigame2内容到里面 :wq 保存退出。

在linux中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。

cron的配置文件称为“crontab”,是“cron table”的简写。

二、cron在3个地方查找配置文件:

/var/spool/cron/ 这个目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名,比如tom建的crontab任务对应的文件就是

/var/spool/cron/tom。一般一个用户最多只有一个crontab文件。/etc/crontab 这个文件负责安排由系统管理员制定的维护系统以及其他任务的cronta。

/etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本。

三、权限

crontab权限问题到/var/adm/cron/下一看,文件cron.allow和cron.deny是否存在,用法如下:

1、如果两个文件都不存在,则只有root用户才能使用crontab命令。

2、如果cron.allow存在但cron.deny不存在,则只有列在cron.allow文件里的用户才能使用crontab命令,如果root用户也不在里面,则root用户也不能使用crontab。

3、如果cron.allow不存在, cron.deny存在,则只有列在cron.deny文件里面的用户不能使用crontab命令,其它用户都能使用。

4、如果两个文件都存在,则列在cron.allow文件中而且没有列在cron.deny中的用户可以使用crontab,如果两个文件中都有同一个用户,

以cron.allow文件里面是否有该用户为准,如果cron.allow中有该用户,则可以使用crontab命令。

四、cron服务

cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业。

1、/sbin/service crond start    //启动服务

2、/sbin/service crond stop     //关闭服务

3、/sbin/service crond restart  //重启服务

4、/sbin/service crond reload   //重新载入配置

5、/sbin/service crond status   //查看服务状态

五、cron语法

在crontab文件中如何输入需要执行的命令和时间。该文件中每行都包括六个域,其中前五个域是指定命令被执行的时间,最后一个域是要被执行的命令。

每个域之间使用空格或者制表符分隔。格式如下:

minute hour day-of-month month-of-year day-of-week commands

合法值 00-59 00-23 01-31 01-12 0-6 (0 is sunday) commands(代表要执行的脚本)

除了数字还有几个个特殊的符号就是"*"、"/"和"-"、",",*代表所有的取值范围内的数字,"/"代表每的意思,"/5"表示每5个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字。

下面给出几个例子:

1、每天在上6点

0 6 * * * echo "Good morning." >> /tmp/test.txt //注意单纯echo,从屏幕上看不到任何输出,因为cron把任何输出都email到root的信箱了。

2、每两个小时(第一个为15,指明没两个小时的第15min中执行一次)

15 */2 * * * echo "Have a break now." >> /tmp/test.txt

3、晚上11点到早上8点之间每两个小时和早上八点

0 23-7/2,8 * * * echo "Have a good dream" >> /tmp/test.txt

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

0 11 4 * 1-3 command line

5、1月1日早上4点

0 4 1 1 * command line

6、每小时(第一分钟)执行/etc/cron.hourly内的脚本

01 * * * * root run-parts /etc/cron.hourly

7、每天(凌晨4:02)执行/etc/cron.daily内的脚本

02 4 * * * root run-parts /etc/cron.daily

8、每星期(周日凌晨4:22)执行/etc/cron.weekly内的脚本

22 4 * * 0 root run-parts /etc/cron.weekly

9、每月(1号凌晨4:42)去执行/etc/cron.monthly内的脚本

42 4 1 * * root run-parts /etc/cron.monthly

注意: "run-parts"这个参数了,如果去掉这个参数的话,后面就可以写要运行的某个脚本名,而不是文件夹名。

10、每天的下午4点、5点、6点的5 min、15 min、25 min、35 min、45 min、55 min时执行命令。

5,15,25,35,45,55 16,17,18 * * * command

11、每周一,三,五的下午3:00系统进入维护状态,重新启动系统。

00 15 * *1,3,5 shutdown -r +5

12、每小时的10分,40分执行用户目录下的innd/bbslin这个指令:

10,40 * * * * innd/bbslink

13、每天早晨三点二十分执行用户目录下如下所示的两个指令(每个指令以;分隔):

203 * * * (/bin/rm -f expire.ls logins.bad;bin/expire$#@62;expire.1st)

14、每年的一月和四月,4号到9号的3点12分和3点55分执行/bin/rm -f expire.1st这个指令,并把结果添加在mm.txt这个文件之后(mm.txt文件位于用户自己的目录位置)。

12,553 4-91,4 * /bin/rm -f expire.1st$#@62;$#@62;mm.txt

linux下添加定时任务

linux下定时任务文件在/etc/crontab 直接vim /etc/crontab 打开就行 在crontab文件中如何输入需要执行的命令和时间.该文件中每行都包括六个域,其中前五个域是指定命令 ...

Linux下添加shell脚本使得nginx日志每天定时切割压缩

Linux下添加shell脚本使得nginx日志每天定时切割压缩一 简介 对于nginx的日志文件,特别是access日志,如果我们不做任何处理的话,最后这个文件将会变得非常庞大 这时,无论是出现异常 ...

linux下添加用户到sudo组 并禁止sudo用户修改密码

linux下添加用户到sudo组 创建用户  useradd hanli 为新用户设置密码  passwd hanli 创建用户组  groupadd  op 将用户添加到用户组  usermod - ...

Linux 下添加用户,修改权限

最近在用虚拟机,安装了centos,现在想新添加一个用户,在网上找了找方法.[原文链接] # useradd –d /usr/sam -m sam 此命令创建了一个用户sam,其中-d和-m选项用来为 ...

Linux下添加,删除,修改,查看用户和用户组

linux下添加,删除,修改,查看用户和用户组 1,创建组 groupadd test 增加一个test组 2,修改组 groupmod -n test2 test 将test组的名子改成test ...

linux下添加用户并将文件夹授权给某一个用户

### linux下添加用户并将文件夹授权给某一个用户 背景:在做一个项目时,需要外包的前端人员调试测试环境的页面,但是又不能给他服务器的账号信息,就在服务器上新添加一个子账户,再给这个账户项目文件的 ...

linux下添加动态链接库路径、动态库加载等方法

linux下添加动态链接库路径的方法 2017年01月20日 10:08:17 阅读数:5596   Linux共享库路径配置 Linux下找不到共享库文件的典型现象为明明已经安装某个软包(如libn ...

crontab使用--linux下的定时任务程序

crontab是一个linux下的定时运行程序,如果我们想让自己的程序定时执行, 可以把自己的程序交给这个程序来完成 第一步:配置crontab的脚本的默认编辑器,它的默认的编辑器不好用,我们配置vi ...

linux下系统定时任务配置----crontab(mysql定时备份)

crontab命令用于设置周期性被执行的指令,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任 ...

随机推荐

C++ 笔记(二) —— 不要在构造和析构函数中调用虚函数

ilocker:关注 Android 安全(新手) QQ: 2597294287 class Transaction { //所有交易的 base class public: Transaction( ...

C++ 类的静态成员详细讲解

在C++中,静态成员是属于整个类的而不是某个对象,静态成员变量只存储一份供所有对象共用.所以在所有对象中都可以共享它.使用静态成员变量实现多个对象之间的数据共享不会破坏隐藏的原则,保证了安全性还可以节 ...

JavaScript函数之递归

递归 递归的本质就是使用函数自身来解决问题的思路. 递归的定义(摘): 程序调用自身的编程技巧称为递归( recursion).递归做为一种算法在程序设计语言中广泛应用. 一个过程或函数在其定义或说明 ...

PyQt5安装目录中找不到designer.exe与pyrcc5.exe

我安装的是PyQt5的5.9版本,在安装目录下找不到designer.exe文件.在摸索一段后发现5.9版本对库文件和相关的开发工具是分开发布的.QtDesigner是在pyqt5-tools的包里. ...

Android开发——Viewpager的介绍使用

目录: 一.Viewpager的简单介绍 二.简单的Viewpager使用 三.简单显示图片的Viewpager实现 四.广告图的实现及Viewpager指示器(小圆点)的实现 五.APP引导页的实现 ...

springcloud情操陶冶-springcloud config server(一)

承接前文springcloud情操陶冶-springcloud context(二),本文将在前文基础上浅析下ConfigServer的工作原理 前话 根据前文得知,bootstrapContext引 ...

springboot测试

一.单元测试 在开发阶段的时候最重要的是单元测试了,springboot对单元测试的支持已经很完善了. 1.在pom包中添加spring-boot-starter-test包引用

求两个数的平均值,不能只用(a+b)/2的方法

#include int avg1(int a, int b) { //利用移位操作符 //右移移位相当于——>除以2 :(a+b)>>1 //考虑到溢 ...

uva-10125-暴力枚举

题意:给一个集合,求d=a+b+c,d最大且a,b,c,d下标不能是同一个 解题思路 a+b=d-c 另外,可以OJ看下0ms大佬们的代码. #include "pch.h" #i ...

linux 如何定时任务添加,linux下添加定时任务。相关推荐

  1. linux ping 虚拟网卡_Linux下添加虚拟网卡,实现一块物理网卡绑定多个IP地址

    前言: 这个功能在实际生产环境中可能没有意义,但是在虚拟机里做实验的时候还是蛮实用的,可以直接在一个网卡上模拟出多个网段,这样就不用再添加单独的网卡啦. 配置方法: 以当前网卡的配置文件为模板创建虚拟 ...

  2. linux环境下添加定时任务,linux下添加定时任务。

    这周要做一个定时增量更新Elasticsearch索引的功能,以前没有做过定时更新,所以请教了下同事,使用crontab添加linux下的定时任务. 一.linux下定时执行任务的方法 在linux中 ...

  3. linux创建定时任务命令,linux下添加定时任务

    linux下添加定时任务 linux下添加定时任务 ### linux下定时执行任务的方法 在LINUX中你应该先输入crontab -e,然后就会有个vi编辑界面,再输入0 3 * * 1 /cle ...

  4. php添加linux定时任务,PHP与Linux定时任务

    定时任务在实际开发中用到是非常多的,这里也简单说说PHP怎么执行定时任务.我们都知道PHP是一门解释性语言,当我们在浏览器中输入某个URL时,我们才能去执行PHP,但是如果不访问URL呢,怎么让PHP ...

  5. linux mysql 定时任务_Linux下Mysql定时任务备份数据的实现方法

    前言 备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程.而对于一些网站.系统来说,数据库就是一切,所以做好数据 ...

  6. window下配置定时任务实现类似linux的cron定时任务

    2019独角兽企业重金招聘Python工程师标准>>> 需求分析: 由于在window本地我已经塔建好爬中代码,不想上传到服务器直接在本地一直爬取就好,所以需要在window下新建定 ...

  7. linux python定时任务调度,Python下定时任务框架APScheduler的使用

    1.APScheduler简介: APScheduler是Python的一个定时任务框架,可以很方便的满足用户定时执行或者周期执行任务的需求,它提供了基于日期date.固定时间间隔interval . ...

  8. 计划任务执行php文件,linux系统下添加计划任务执行php文件方法

    在web开发过程中,经常需要设定一些定期执行的任务,比如商品定时上下架.我们以php文件为例,讲解linux下的计划任务. 方法/步骤 1.打开linux系统命令行界面. 在命令行界面中输入如下命令: ...

  9. linux下添加路由的方法

    Linux中增加软路由的两种方法 第一种: route add -net 172.16.6.0 netmask 255.255.255.0 gw 172.16.2.254 dev eth0 /* 增加 ...

最新文章

  1. mysql删除表命令_MySQL创建和删除表操作命令实例讲解
  2. 滚动条的值如何赋值_如何给Word文本框添加滚动条?史上最详细步骤
  3. Go性能测试benchmark
  4. 实验二:编写输出Hello World!
  5. Java知多少(81)框架窗口基础
  6. Hadoop、spark、Flink、Blink、storm介绍
  7. 数据集可以导入mysql_利用数据集进行数据访问操作
  8. PHP:函数赋参数默认初值
  9. IOS程序之发送短信代码实现
  10. C与C++接口相互调用
  11. 适配器模式之观察者模式
  12. 10g gtx 光纤通信测试_光纤通信optisystem实验
  13. 【发布】Arknights(明日方舟)拆包+桌面精灵
  14. FIT2CLOUD入选2018 Gartner Cool Vendor
  15. descriptions描述列表换行
  16. mysql查询手机号隐藏中间四位
  17. 微信支付终于成功了(安卓,iOS),在此分享
  18. Java 循环语句折纸小游戏
  19. java520.1314表白_521.1314表白的数学题大全 临沂学霸520专用表白方式
  20. 自用房屋租住管理系统

热门文章

  1. 时间序列分析学习笔记
  2. 新安装的C4D 无法直接拖入obj文件和贴图
  3. 佳博usb打印机开钱箱
  4. 2022-08-25-RISC-V跃出IoT圈,高性能计算三分天下雏形初现-平头哥先“打样”了SoC原型芯片曳影1520(-JPG)
  5. 计算机组装功耗,浅谈组装电脑之电脑功耗电源额定功率的选择技巧
  6. php 吞吐率,QPS/TPS/并发量/吞吐量/吞吐率的概念
  7. (ICCV-2021)用于步态识别的3D局部卷积神经网络(一)
  8. windows server2021 R2 由于没有远程桌面授权服务器可以提供许可证,远程会话被中断
  9. JavaWeb 文件上传和下载
  10. tq2440 启动代码分析