精华内容
下载资源
问答
  • linux 让 crontab 每天0300执行

    万次阅读 2019-08-10 12:01:46
    添加定时任务 : crontab -e ...第2列表示小时1~23(0表示0点) 第3列表示日期1~31 第4列表示月份1~12 第5列标识号星期0~6(0表示星期天) 第6列要运行的命令 例如定时请求某一个url : 00 03 * * *...

    这里写图片描述

    添加定时任务 : crontab -e

    基本格式 :
    *  *  *  *  *  command
    分  时  日  月  周  命令
    解 释:
    第1列表示分钟1~59 每分钟用或者 /1表示
    第2列表示小时1~23(0表示0点)
    第3列表示日期1~31
    第4列表示月份1~12
    第5列标识号星期0~6(0表示星期天)
    第6列要运行的命令

    例如定时请求某一个url : 00 03 * * * /usr/bin/curl http://crmpay.com/mpdown
    注意:一定要加上这个 /usr/bin/curl

    应用 : 定时重启apache 服务、报表、支付自动对账等.

    展开全文
  • 后面只能接档案名有三个文件我们将当前目录下的文件全部打包利用date生成特定文件名称tar -czf log-`date +%Y%m%d`.tar.gz ./二、crontab我们先查看下命令crontab命令用于设置周期性被执行的指令。该命令从标准输入...

    一、tar 命令备份

    参数:-c: 建立压缩档案、-z:有gzip属性的、-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名

    有三个文件

    24408051eecc367acaf381fde23e08c5.png

    我们将当前目录下的文件全部打包

    11cdeb1c9bbfff9de9e6617236cf38d1.png

    利用date生成特定文件名称

    tar -czf log-`date +%Y%m%d`.tar.gz ./

    e485096f4b81d916a6f211a3ebbb9ac4.png

    二、crontab

    我们先查看下命令

    4925f05fbd1f8682e66fec8cf70e2415.png

    crontab命令用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于"crontab"文件中,以供之后读取和执行。

    91237e45933e27240197bd82873fe0d6.png

    minute: 表示分钟,可以是从0到59之间的任何整数。

    hour:表示小时,可以是从0到23之间的任何整数。

    day:表示日期,可以是从1到31之间的任何整数。

    month:表示月份,可以是从1到12之间的任何整数。

    week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。

    command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。

    或者这个表好理解一点

    d1f8737e4d42365f590765d9f6883458.png

    在时间表示中,还有一些特殊符号需要学习

    e29fc99c4bf8c70af66ff16473a76c23.png

    一些帮助理解的例子

    8e0ed770cbc12587e8aeb8c810cc97fd.png

    做一个简单的练习,在当前目录下,创建一个文件

    f0688072966211100d069f5992ddbba0.png
    524c80d5d4fdb81b06bd1ef677b64c84.png

    让系统每隔 2 分钟就向 test1 文件中写入一行"xlglvc",验证一下系统定时任务是否会执行

    首先进入编辑模式

    e09546c050acf57b36d36f694cf6ad8d.png

    编辑命令

    */2 * * * * /bin/echo "xlglvc" >> /data/tarTest/test1

    52b1043d7889d83f971e62e822920eee.png

    我们查看这个文件信息

    3def39fadc7d07840c33d733164a3a48.png

    我们可以使用下面的命令查询当前用户定时任务或删除当前用户定时任务

    查询当前用户定时任务

    68679711776b9f822c07b4f8cfaf02a4.png

    删除当前用户定时任务

    ac7faec5ccef78168e8a9ad3bd17d2c9.png

    我们把上面的打包压缩命令做一下更改,将打包压缩命令放到脚本中

    ce0f6223df4f33e469efda43ed4b2e61.png

    我们将时间范围缩小到秒

    tar -czf log-`date +%Y%m%d_%H%M%S`.tar.gz ./

    7da71ac09cd98cdebd3254bbebd0a834.png

    执行脚本

    c89af0a9de7a5f31f39a53e8082f9c6f.png

    系统每分钟执行一次这个脚本

    9923370fa58e4b02c44723aab345607b.png

    我们查看下任务

    ea9a3ff8ec368dbf59a9b9c1f4292b4f.png

    我们查看这个内容

    5aaf568634c37d71dd43af9e57a2577c.png

    更改下文件权限,我们再查看任务

    f676eccbc8f8c56a1cd9c090afcf0c35.png

    可以考虑下面三个练习

    1、让系统在每周一的凌晨3点01分重启一次

    2、在每月1日、10日、15 日的凌晨 00 点 30 分都定时执行日志备份脚本

    3、结合前面邮件的发送命令,定时发送打包的压缩文件

    网上练习参考

    ##每月每天凌晨3点30分和中午12点20分执行test.sh脚本

    30 3,12 * * * /home/test.sh

    ##每月每天每隔6小时的每30分钟执行test.sh脚本

    30 */6 * * * /home/test.sh

    ##每月每天早上8点到下午18点每隔2小时的每30分钟执行test.sh脚本

    30 8-18/2 * * * /etc/init.d/network restart

    ##每月每天晚上21点30分执行test.sh脚本

    30 21 * * * /etc/init.d/network restart

    ##每月1号、10号、22号凌晨4点45分执行test.sh脚本

    45 4 1,10,22 * * /etc/init.d/network restart

    ##8月份周一、周日凌晨1点10分执行test.sh脚本

    10 1 * 8 6,0 /etc/init.d/network restart

    ##每月每天每小时整点执行test.sh脚本

    00 */1 * * * /etc/init.d/network restart

    在书写 crontab 定时任务时,需要注意以下几个事项:

    1、6 个选项都不能为空,必须填写。如果不确定,则使用"*"代表任意时间。

    2、crontab 定时任务的最小有效时间是分钟,最大有效时间是月。像 2018 年某时执行、3 点 30 分 30 秒这样的时间都不能被识别。

    3、在定义时间时,日期和星期最好不要在一条定时任务中出现,因为它们都以天为单位,非常容易让管理员混淆。

    4、在定时任务中,不管是直接写命令,还是在脚本中写命令,最好都使用绝对路径。有时使用相对路径的命令会报错。

    展开全文
  • l 列出当前计时器的设置-r 删除计时器的设置-i 交互式模式,删除计时器设置时要先询问第1列 第2列 第3列 第4列 第5列 第6列 第7列第1列表示分钟1~59 每分钟用*或者 */1表示第2列表示小时1~23(0表示0点)第3列表示...

    crontab

    定时执行操作命令,每一个用户拥有自己的crontab,配置文件存在/var下面,不能被直接编辑。

    -e 设置计时器

    -l 列出当前计时器的设置

    -r 删除计时器的设置

    -i 交互式模式,删除计时器设置时要先询问

    b52f995cde61

    第1列 第2列 第3列 第4列 第5列 第6列 第7列

    第1列表示分钟1~59 每分钟用*或者 */1表示

    第2列表示小时1~23(0表示0点)

    第3列表示日期1~31

    第4列表示月份1~12

    第5列标识号星期0~6(0表示星期天)

    第6列表示执行命令用户

    第7列要运行的命令

    crontab书写规则的例子:

    30 21 * * * /usr/local/etc/rc.d/lighttpd restart

    上面的例子表示每晚的21:30重启lighttpd 。

    45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart

    上面的例子表示每月1、10、22日的4 : 45重启lighttpd 。

    10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart

    上面的例子表示每周六、周日的1 : 10重启lighttpd 。

    0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart

    上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启lighttpd 。

    0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart

    上面的例子表示每星期六的11 : 00 pm重启lighttpd 。

    0 * * * * /usr/local/etc/rc.d/lighttpd restart

    每一小时重启lighttpd

    0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart

    每月的4号与每周一到周三的11点重启lighttpd

    0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart

    一月一号的4点重启lighttpd

    展开全文
  • linux crontab 命令,最小的执行时间是一分钟。如需要在小于一分钟内重复执行,可以有两个方法实现。Cron 各项的描述以下是 crontab 文件的格式:{minute} {hour} {day-of-month} {month} {day-of-week} {full-path-...

    linux crontab 命令,最小的执行时间是一分钟。如需要在小于一分钟内重复执行,可以有两个方法实现。

    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.

    1.使用延时来实现每N秒执行

    创建一个php做执行动作,非常简单,就是把当前时间写入log。

    file_put_contents('/home/fdipzone/php/crontab/run.log', date('Y-m-d H:i:s')."\r\n", FILE_APPEND);

    ?>

    crontab -e 输入以下语句,然后 :wq 保存退出。

    * * * * * php /home/fdipzone/php/crontab/tolog.php

    * * * * * sleep 10; php /home/fdipzone/php/crontab/tolog.php

    * * * * * sleep 20; php /home/fdipzone/php/crontab/tolog.php

    * * * * * sleep 30; php /home/fdipzone/php/crontab/tolog.php

    * * * * * sleep 40; php /home/fdipzone/php/crontab/tolog.php

    * * * * * sleep 50; php /home/fdipzone/php/crontab/tolog.php

    使用 tail -f 查看执行情况,可以见到log每10秒被写入一条记录。

    fdipzone@ubuntu:~$ tail -f /home/fdipzone/php/crontab/run.log

    2014-03-31 21:47:01

    2014-03-31 21:47:11

    2014-03-31 21:47:21

    2014-03-31 21:47:31

    2014-03-31 21:47:41

    2014-03-31 21:47:51

    2014-03-31 21:48:01

    原理:通过延时方法 sleep N  来实现每N秒执行。

    注意:

    60必须能整除间隔的秒数(没有余数),例如间隔的秒数是2,4,6,10,12等。

    如果间隔的秒数太少,例如2秒执行一次,这样就需要在crontab 加入60/2=30条语句。不建议使用此方法,可以使用下面介绍的第二种方法。

    2.编写shell脚本实现 推荐

    crontab.sh

    #!/bin/bash

    step=2 #间隔的秒数,不能大于60

    for (( i = 0; i < 60; i=(i+step) )); do

    $(php '/home/fdipzone/php/crontab/tolog.php')

    sleep $step

    done

    exit 0

    crontab -e 输入以下语句,然后:wq 保存退出。

    # m h dom mon dow command

    * * * * * /home/fdipzone/php/crontab/crontab.sh

    使用 tail -f 查看执行情况,可以见到log每2秒被写入一条记录。

    fdipzone@ubuntu:~/php/crontab$ tail -f run.log

    2014-03-31 22:23:01

    2014-03-31 22:23:03

    2014-03-31 22:23:06

    2014-03-31 22:23:08

    2014-03-31 22:23:10

    2014-03-31 22:23:12

    2014-03-31 22:23:14

    2014-03-31 22:23:16

    2014-03-31 22:23:18

    2014-03-31 22:23:20

    2014-03-31 22:23:22

    2014-03-31 22:23:25

    2014-03-31 22:23:27

    2014-03-31 22:23:29

    2014-03-31 22:23:31

    2014-03-31 22:23:33

    2014-03-31 22:23:35

    2014-03-31 22:23:37

    2014-03-31 22:23:39

    2014-03-31 22:23:41

    2014-03-31 22:23:44

    2014-03-31 22:23:46

    2014-03-31 22:23:48

    2014-03-31 22:23:50

    2014-03-31 22:23:52

    2014-03-31 22:23:54

    2014-03-31 22:23:56

    2014-03-31 22:23:58

    2014-03-31 22:24:00

    原理:在sh使用for语句实现循环指定秒数执行。

    注意:如果60不能整除间隔的秒数,则需要调整执行的时间。例如需要每7秒执行一次,就需要找到7与60的最小公倍数,7与60的最小公倍数是420(即7分钟)。

    则 crontab.sh step的值为7,循环结束条件i<420, crontab -e可以输入以下语句来实现

    # m h dom mon dow command

    */7 * * * * /home/fdipzone/php/crontab/crontab.sh

    总结

    以上所述是小编给大家介绍的linux定时任务crontab 实现每秒执行一次的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

    展开全文
  • crontab配置文件的5个*分别代表(从后往前,周月日时分): 分,取值0-59 小时,取值0-23 天,取值0-31 月,取值1-12 周,取值0-6,从sunday开始算 配置 1 6,7 * * * * python3 /root/python/get_weather.py
  • * * * * * /usr/bin/backup
  • <p>How i can execute my function using crontab every day at 03:00AM, time zone +2 ? My problem is current function use timezone of my server, and second problem this library not allow to specific ...
  • 或者 0 2 * * * /home/backup/bkDatabaseName.sh 每天凌晨两点执行一次shell脚本 注意:https://tool.lu/crontab/ (在线工具,可以对crontab表达式进行计算) 重启crontab服务 #service crond start 测试任务是否...
  • 1.2 打开文件,直接输入需要执行的脚本:(在这里之前要检查 /usr/bin/curl) 1.3 输入如上命令,内容的意思是:每个小时的第3分钟,访问某一个网址 输入完毕即按 Esc =》 输入冒号:=》输入wq,然后回车保存, ...
  • 请问一下是这样写的吗,但是为什么是1执行的呢,系统的时区也没有问题的. 30 8 * * * /usr/bin/curl http://www.jundawang.net/index.php/Admin-Integra-sendemail.html
  •  cron可以让系统在指定的时间,去执行某个指定的工作,我们可以使用crontab指令来管理cron机制 crontab参数  -u:这个参数可以让我们去编辑其他人的crontab,如果没有加上这个参数的话就会开启自己的crontab  ...
  • crontab执行脚本

    2020-09-24 16:13:26
    1.在表达式中切换到脚本所在目录执行 #每天6和18启动脚本 0 6,18 * * * `cd /app/kjds/crawler&& ./startUpdProductInfo.sh`
  • crontab计划执行

    2018-10-17 16:41:24
    执行文字编辑器来编辑crontab,内定的文字编辑器是VI -r 删除目前的crontab -l 列出目前的crontab(查看专用) -i 会和-r 配合使用,在删除当前的crontab时询问,输入y 则删除 注意crontab是分...
  • 下面一行就是定时执行php(这里是每天凌晨一分钟执行,如果想每分钟执行就是* * * * *或*/1 * * * *) 1 0 * * * root /usr/local/bin/php -q  /usr/home/day_self_minus.php 红色部分是php安装位置(没有...
  • crontab定时执行程序

    千次阅读 2016-07-12 23:06:47
    概述cron是linux中的一个定时执行工具,可让系统在特定的时间自动执行特定的任务,如数据库备份、日志分析等。crontab 是一个包含一系列定时任务命令的文本文件。该文件使用crontab 命令进行编辑。文件中的命令由...
  • cron机制 cron可以让系统在指定的时间,去执行某个指定的工作,我们可以使用crontab指令来管理cron机制crontab参数 -u:这个参数可以让我们去编辑其他人的crontab,如果没有加上这个参数的话就会开启自己的crontab ...
  • crontab执行日志

    2020-02-12 15:03:29
    在/var/spool/mail/用户 基本格式 : *   * ...0 ...0 ) ...5 ... 每天执行 0 0 * * * 每周执行 0 0 * * 0 每月执行 0 0 1 * * 每年执行 0 0 1 1 *
  • 我想要在 Linux 环境中加一个定时任务,每天凌晨 3 点执行,用来发送一些数据文件给对接方 我在 $HOME/shell 下写了一个脚本,然后 crontab 设置了执行计划,手动执行 了下脚本,发现没有问题就快乐的下班了。 谁...
  • 定时执行任务crontab

    2020-01-12 19:33:18
    使用crontab你可以在指定的时间执行一个shell脚本或者一系列Linux命令。 例如系统管理员安排一个备份任务使其每天都运行 使用前备份:crontab -l >crontab.tmp 还原指令:crontab crontab.tmp 查看日志:tail...
  • linux 自动执行 crontab学习笔记
  • crontab定时执行任务

    2018-11-20 14:21:50
    crontab定时执行任务 名称 : crontab  使用权限 : 所有使用者  使用方式 :  crontab file [-u user]-用指定的文件替代目前的crontab。  crontab-[-u user]-用标准输入替代目前的crontabcrontab-1[user]-列...
  • Linux定时执行任务crontab

    千次阅读 2018-03-20 07:34:34
    `crontab`可以定时执行任务,比如可以配置为每天点执行什么任务,其实还可以配置为开机后执行一个任务。本文讲述了crontab的使用,并给出示例......
  • crontab执行tp5命令行

    2018-03-19 13:56:00
    crontab -e // 每一小时执行一次 0 */1 * * * /usr/local/php/bin/php /home/wwwroot/default/www.xxx.com/think spider   转载于:https://my.oschina.net/u/1422143/blog/1647147
  • 在线Crontab表达式执行时间验证 / crontab执行时间计算 - aTool在线工具例如:0 */12 * * * [user] [command] 请只输入红色部分进行验证Crontab执行的时间。待验证Crontab表达式: 执行次数: 验证Crontab表达式...
  • Spark:使用Crontab定时执行Spark任务一、使用Crontab定时执行Spark任务 一、使用Crontab定时执行Spark任务 CSDN:Trigl 使用Crontab定时执行Spark任务

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 34,222
精华内容 13,688
关键字:

crontab每天0点5点执行