精华内容
参与话题
问答
  • Linux 执行定时任务 shell脚本 在Linux中,周期执行的任务一般由cron这个守护进程来处理,cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。 cron的配置文件称为“crontab”,是“cron ...

    Linux 执行定时任务 shell脚本

     


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

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

     

    一、cron服务

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

      service crond start    //启动服务

      service crond stop    //关闭服务

      service crond restart  //重启服务

      service crond reload  //重新载入配置

      service crond status  //查看服务状态

    二、crond服务

    安装crontab:

    yum install crontabs

    服务操作说明:

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

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

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

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

     

    查看crontab服务状态:

    service crond status

    手动启动crontab服务:

    service crond start

    查看crontab服务是否已设置为开机启动,执行命令:

    ntsysv

     

    加入开机自动启动:

    chkconfig –level 35 crond on

    案例一:

    1、shell脚本存放的位置在 /usr/local/sbin路径下面 

    新建一个bak.sh

    #进入到根目录
    
    cd /usr/local/sbin
    vi back.sh

    2、将shell脚本加入定时任务

    crontab -e

    #每天0点自动执行脚本

    0 0 * * * /usr/local/sbin/bak.sh

    案例二:

    1.声明一下我安装的lnmp环境,shell脚本存放的位置在 /usr/local/sbin路径下面 

    新建一个test.sh

    echo "yes" >> /home/abc.txt

    2.将shell脚本加入定时任务

    crontab -e
    * * * * * /usr/local/sbin/test.sh

    3.查看执行test.sh脚本的结果

    [root@centos xshggn home]# cat abc.txt 
    yes
    yes
    yes
    yes

    4.查看定时任务的执行情况

        username:用户

        在/var/spool/mail/{username}   中可以查看最近的crontab的执行情况

     

    5.cron的定时任务备份恢复

     

    如果使用crontab -r 误删了定时任务  在/var/spool/cron下有定时任务的备份.可以通过该cron找回

    如果没有权限 的话   su - + root.password    在root用户下 进行查看

     

    6.如何查看crontab定时任务是否执行过 查看记录

    命令的模式像下面这个: grep "script.php" /path/file.ext. 比如,下面的命令就是从/var/log/cron.log 检测cron任务是否有执行 cronscript.php 脚本文件

    grep "cronscript.php" /var/log/cron

    按下Enter 然后就会输出类似这样的:

    1 Feb 24 02:33:02 ecbiz108 crond[9772]: (userna5) CMD (php -q /home/userna5/public_html/cronscript.php)
    2 Feb 25 02:33:01 ecbiz108 crond[16587]: (userna5) CMD (php -q /home/userna5/public_html/cronscript.php)
    3 Feb 25 11:45:01 ecbiz108 crond[21887]: (userna5) CMD (php -q /home/userna5/public_html/cronscript.php)

    我们检查输出中,你会看到cron的执行具体时间

    展开全文
  • 本文提供使用Linux的Shell脚本定时处理MySQL超时Locked进程脚本
  • Linux中,周期执行的任务一般由cron这个守护进程来处理。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。cron的配置文件称为“crontab”,是“cron table”的简写。 1. cron服务【Ubunt...

    Linux中,周期执行的任务一般由cron这个守护进程来处理。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。cron的配置文件称为“crontab”,是“cron table”的简写。

    1. cron服务【Ubuntu环境】

    查看cron状态

    sudo  service cron status

    开启cron

    sudo /etc/init.d/cron start

    关闭cron

    sudo /etc/init.d/cron stop

    重启cron

    sudo /etc/init.d/cron restart

    2. crontab用法

    crontab –e : 修改 crontab 文件,如果文件不存在会自动创建。  (这样可以编辑模式打开个人的crontab配置文件,然后加入一下这行:0 0 * * * /home/linrui/XXXXXXXX.sh

    这将会在每天凌晨运行 指定的.sh文件

    crontab –l : 显示 crontab 文件。 
    crontab -r : 删除 crontab 文件。
    crontab -ir : 删除 crontab 文件前提醒用户。

     在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) 

    除了数字还有几个特殊的符号:"*"、"/"和"-"、","

    • *代表所有的取值范围内的数字
    • "/"代表每的意思,"/5"表示每5个单位
    • "-"代表从某个数字到某个数字
    • ","分开几个离散的数字

    :commands 注意以下几点

    • 要是存在文件,要写绝对路径
    • 即使是打印也不会显示在显示屏,在后台运行,最好重定向日志

    3. 使用vim编辑crontab文件

    EDITOR=vi
    export EDITOR
    crontab -e

    4. Cron 各项的描述

    以下是 crontab 文件的格式:

    {minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script} 
    o minute: 区间为 0 – 59 
    o hour: 区间为0 – 23 
    o day-of-month: 区间为0 – 31 
    o month: 区间为1 – 12. 1 是1月. 12是12月. 
    o Day-of-week: 区间为0 – 7. 周日可以是0或7.

    5. 例子解释

    1 0 * * * /home/lenovosh/work/bianyi.sh lumus nedp

    在每天凌晨00:01运行 指定的bianyi.sh脚本文件

    59 23 * * 1,2,3,4,5 /home/lenovosh/work/bianyi.sh lumus nedp

    在每个工作日23:59运行 指定的bianyi.sh脚本文件,或者如下写法

    59 23 * * 1-5 /home/lenovosh/work/bianyi.sh lumus nedp

    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    */1 * * * * /home/lenovosh/work/bianyi.sh lumus nedp

    每分钟运行 指定的bianyi.sh脚本文件

    10 14 1 * * /home/lenovosh/work/bianyi.sh lumus nedp

    每个月的1号14:10运行 指定的bianyi.sh脚本文件

    1 0 * * 1,3,5 /home/lenovosh/work/bianyi.sh lumus nedp

    每周一、三、五凌晨00:01运行 指定的bianyi.sh脚本文件

    具体想看bianyi.sh(编译脚本)怎么实现,请看下一篇博客!

    转自:http://www.cnblogs.com/wucaiyun1/p/6866730.html

     

    转载于:https://www.cnblogs.com/itdi/p/6866840.html

    展开全文
  • Linux定时shell脚本

    2015-07-12 00:33:32
    明天星期天,不对,应该说今天,有一个要11点处理的事情,星期天嘛,当然是想...1.编写shell脚本 vi /root/sh/crond.sh 脚本内容: #!/bin/sh cd /root/task/bin/ ./stop.sh 2.修改权限 chmod +x /root/sh

    明天星期天,不对,应该说今天,有一个要11点处理的事情,星期天嘛,当然是想好好休息一下,睡个懒觉了。所以写了一个简单的脚本,来完成任务。

    刚好有时间,顺便记录一下:

    1.编写shell脚本
    vi /root/sh/crond.sh

    脚本内容:
    #!/bin/sh
    cd /root/task/bin/
    ./stop.sh


    2.修改权限
    chmod +x /root/sh/crond.sh


    3.增加/etc/crontab
    0 11 12 7 * root  /root/sh/crond.sh  


    格式说明如下:

    # 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


    4.重启crond服务
    /etc/init.d/crond restart


    5.查看脚本执行情况
    /var/spool/mail/root

    展开全文
  • Linux中,周期执行的任务一般由cron这个守护进程来处理。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。cron的配置文件称为“crontab”,是“cron table”的简写。 1. ...

    阅读目录

    • 1. cron服务【Ubuntu环境】
    • 2. crontab用法
    • 3. vim编辑crontab文件
    • 4.Cron各项描述
    • 5.例子解释

    Linux中,周期执行的任务一般由cron这个守护进程来处理。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。cron的配置文件称为“crontab”,是“cron table”的简写。

    1. cron服务【Ubuntu环境】

    查看cron状态

    sudo  service cron status

    开启cron

    sudo /etc/init.d/cron start

    关闭cron

    sudo /etc/init.d/cron stop

    重启cron

    sudo /etc/init.d/cron restart

    2. crontab用法

    crontab –e : 修改 crontab 文件,如果文件不存在会自动创建。  (这样可以编辑模式打开个人的crontab配置文件,然后加入一下这行:0 0 * * * /home/linrui/XXXXXXXX.sh

    这将会在每天凌晨运行 指定的.sh文件

    crontab –l : 显示 crontab 文件。 
    crontab -r : 删除 crontab 文件。
    crontab -ir : 删除 crontab 文件前提醒用户。

     在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) 

    除了数字还有几个特殊的符号:"*"、"/"和"-"、","

    • *代表所有的取值范围内的数字
    • "/"代表每的意思,"/5"表示每5个单位
    • "-"代表从某个数字到某个数字
    • ","分开几个离散的数字

    :commands 注意以下几点

    • 要是存在文件,要写绝对路径
    • 即使是打印也不会显示在显示屏,在后台运行,最好重定向日志

    3. 使用vim编辑crontab文件

    EDITOR=vi
    export EDITOR
    crontab -e

    4. Cron 各项的描述

    以下是 crontab 文件的格式:

    {minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script} 
    o minute: 区间为 0 – 59 
    o hour: 区间为0 – 23 
    o day-of-month: 区间为0 – 31 
    o month: 区间为1 – 12. 1 是1月. 12是12月. 
    o Day-of-week: 区间为0 – 7. 周日可以是0或7.

    5. 例子解释

    1 0 * * * /home/lenovosh/work/bianyi.sh lumus nedp

    在每天凌晨00:01运行 指定的bianyi.sh脚本文件

    59 23 * * 1,2,3,4,5 /home/lenovosh/work/bianyi.sh lumus nedp

    在每个工作日23:59运行 指定的bianyi.sh脚本文件,或者如下写法

    59 23 * * 1-5 /home/lenovosh/work/bianyi.sh lumus nedp

    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    */1 * * * * /home/lenovosh/work/bianyi.sh lumus nedp

    每分钟运行 指定的bianyi.sh脚本文件

    10 14 1 * * /home/lenovosh/work/bianyi.sh lumus nedp

    每个月的1号14:10运行 指定的bianyi.sh脚本文件

    1 0 * * 1,3,5 /home/lenovosh/work/bianyi.sh lumus nedp

    每周一、三、五凌晨00:01运行 指定的bianyi.sh脚本文件

    具体想看bianyi.sh(编译脚本)怎么实现,请看下一篇博客!

    转载于:https://www.cnblogs.com/wucaiyun1/p/6866730.html

    展开全文
  • 1.编写Python脚本 创建Python文件 test.py f = open('haha.text','w',encoding...2.编写shell脚本 创建 myshell.sh 文件 #!/bin/bash /home/dm2/anaconda3/bin/python3 /home/dm2/thunder_project/thunder_da...
  • 方法 一 #!/bin/bash for i in ls /app do num=(ls/app/(ls /app/(ls/app/i | wc -l) if [ num−gt5];thenjs=0forjin‘cd/app/num -gt 5 ];then js=0 for j in `cd /app/num−gt5];thenjs=0forjin‘cd/app/i &...
  • 公司测试服务器被人抓去挖矿了,CPU直接飙升到600%,700%。这个挖矿病毒特别难搞,找了公司...就想着先简单处理一下,写个shell脚本,每过20分钟(通过观察,kill -9病毒进程之后 20分钟后它又出现了) kill -9cpu超过...
  • 文LINUX 定时脚本 2016年10月07日编辑  一、Crontab命令解析  crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务...
  • 前几天刚学了一点shell脚本,立马测试一下,写一个定时重启的脚本。 脚本编写 shell基础知识 想好处理逻辑后剩下的就是具体的实现:查询当前tomcat的pid ,kill进程更直接(不用 shutdown.sh 是因为有时候关不掉),...
  • shell脚本定时任务

    2018-11-16 14:05:29
    最近有个需求要求定时对服务器上的文件进行压缩处理,算是实战中用的第一个shell吧 crontab 命令crontab -e进行开始编写自己的定时代码 * * * * * /u01/app/test/bak/bin/bak.sh >> /u01/app/test/bak/log/bak...
  • 陆续有 N 此了,每次服务器自动重启后,某个数据库内的一张表会出现正在使用中的状态,然后对其修复会报以下提示: Incorrect file format 'ac_allow' 虽然可以经过手动清空表...然后心想,写一个定时脚本,一个...
  • Shell脚本之crontab定时任务

    千次阅读 2015-01-16 12:07:19
    crontab定时任务 crondtab是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,crondtab进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动...
  • Shell 定时任务脚本脚本日志输出

    千次阅读 2019-08-06 13:01:45
    crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有...
  • 两个数据库之间同步数据...目录Shell脚本配置Linux定时任务配置打开crontab修改crontab配置 Shell脚本配置 #!/bin/bash # 配置数据库账号密码 username='xxx' password='pppp' target_username='yyy' target_password=
  • Linux下添加shell脚本使得nginx日志每天定时切割压缩 对于nginx的日志文件,特别是access日志,如果我们不做任何处理的话,最后这个文件将会变得非常庞大 这时,无论是出现异常时查日志,还是使用“GoAccess”等...
  • Linux中,周期执行的任务一般由cron这个守护进程来处理 ps -ef | grep cron  cron读取一个或多个配置文件,这些配置文件中...一、 cron在3个地方查找配置文件(设置shell脚本): 1、/var/spool/cron/yanggang 这个
  • 高级Shell脚本编程

    2013-10-28 10:08:19
    32.1. 非官方的Shell脚本编写风格 33. 杂项 33.1. 交互与非交互式的交互与非交互式的shell和脚本 33.2. Shell包装 33.3. 测试和比较: 一种可选的方法 33.4. 递归 33.5. 将脚本"彩色化" 33.6. 优化 33.7. ...
  • 然而服务器管理员会用脚本定时清理那些长时间没有访问的文件(大概一两天左右),身边经常有同事这一周好不容易弄来一堆文件,休息一个周末回来就发现已经没有了,于是鄙人写了个脚本用来自动刷新文件夹下所有文件...
  • 1、crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否...
  • shell 脚本

    2018-05-27 22:32:41
    1.概念:将执行的命令按顺序保存到一个文件给该文件可执行权限,便可运行可结合各种shell控制语句已完成复杂的操作2.应用场景重复性操作批量事务处理自动化运维服务运行状态监控定时任务执行...

空空如也

1 2 3 4 5 ... 15
收藏数 289
精华内容 115
关键字:

定时处理shell脚本