zoukankan      html  css  js  c++  java
  • Linux 定时任务

    Crontab 定时任务

    用来提交和管理用户的需要周期性执行的任务

    定时任务cron表达式

    crontab 我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本

    编辑定时任务使用crontab -e ,相当于vi /var/spool/cron/root,但它可以检查语法

    查看定时任务使用crontab –l,相当于cat /var/spool/cron/root(root对应用户名,不同的用户可以不同的定时任务)

    用户自定义的定时任务的格式:分 时 日 月 周 cmd,中间用空格分隔

    周和日尽量不要同时用cron表达式符号释义

    符号

    释义

    举例

    *

    表示任意时间都,实际就是“每”的意思

    小时上的*等价于00-23

    分钟上的*等价于0-59

    -

    表示时间范围,区间段

    17-19点,即17点到19点,相当于171819

    表示分隔时间段的意思

    30 17,18,19 * * *表示每天17181930分钟

    /n

    表示每隔n单位时间执行一次任务

    */10 * * * * 表示每10分钟执行一次

     

     

     

     使用者权限文件

    文件

    说明

    /etc/cron.deny

    该文件中所列用户不允许使用crontab命令

    /etc/cron.allow

    该文件中所列用户允许使用crontab命令

    /var/spool/cron/

    所有用户crontab文件存放的目录,以用户名命名

     指令选项说明含义表

    参数名称

     含义

     指定示例

    -l(是字母)

    显示用户crontab文件内容l list缩写

    crontab l

    -e

    进入vi编辑用户crontab文件,eedit缩写

    crontab -e

    -i

    删除用户crontab文件前确认提示

    crontab -ri

    -r

    crontab目录中删除用户crontab文件

    crontab -r

    -u user

    指定使用者

    crontab -u 15b883 -l

     查看crond是否开启

    [root@15b883 ~]# chkconfig --list crond
    crond           0:off   1:off   2:on    3:on    4:on    5:on    6:off
    [root@15b883 ~]# /etc/init.d/sshd 
    Usage: /etc/init.d/sshd {start|stop|restart|reload|force-reload|condrestart|try-restart|status}
    [root@15b883 ~]# /etc/init.d/sshd status
    openssh-daemon (pid  1112) is running...

    提示:

    1、我们所说的crond服务是运行的程序,而crontab命令用户来设置定时规则的命令。

    2、crond服务是企业生产工作中常用的重要服务,at和anacron很少使用,可以忽略

    3、几乎每个服务器都会用到crond服务

    4、上千服务器可以开发分布式定时任务项目方案

     cron时间表达式实例

    30 3,12 * * * /bin/sh /scripts/15b883.sh
    每天3点30分和12点30分执行
    
    30 */6 * * * /bin/sh /scripts/15b883.sh
    每隔6小时的半点执行,相当于6,121824(?)
    */n==0/n
    
    30 8-18/2 * * * /bin/sh /scripts/15b883.sh
    早晨8点到下午18点之间每隔2小时的半点执行,相当于8,10121416,18时的半点
    
    30 21 * * * /application/apache/bin/apachectl graceful
    每晚21点半重启apache服务
    
    45 4 1,10,22 * * /application/apache/bin/apachectl graceful
    每月1号,10号,22号的凌晨4点45重启apache
    
    10 1 * * 6,0 /application/apache/bin/apachetcl graceful
    每周末的凌晨1点10分重启apache
    
    0,30 18-23 * * */application/apache/bin/apachectl graceful
    每天的18点至23点,每隔30分钟重启apache
    
    00 */1 * * */application/apache/bin/apachectl graceful
    每隔一小时整点重启apache
  • 相关阅读:
    股指期货风声水起 股市"蛇人″给我们启示
    Goals of Distributed Application Design
    火箭股票,火箭发射(07.4.12)
    SQLAlchemy完全入门
    巧用异或
    FastAPI启用HTTPS
    错误记录:Can't connect to MySQL server on xxx
    MySQL常用命令
    就是想写点什么
    Android关于Activity class {package/class} does not exist
  • 原文地址:https://www.cnblogs.com/syavingcs/p/8618065.html
Copyright © 2011-2022 走看看