• 执行任务Ubuntu使用crontab定时任务


    查了好多资料,发现还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧!

         因为明天想定时执行postgres的一些脚本,所以在网上查一下有一个crontab的命令,就把这个命令的应用记录一下,便利往后查找.

        cron是一个[守护程序]用于在指定的时光内执行行程类的任务,每一个用户都有一个 crontab 文件,来允许他们指定需要执行的内容和时光,此外,系统也有一个 crontab ,用来允许像交替日志和更新当地数据这样有规矩的任务。

        环境:Ubuntn 12

        1.应用 crontab -e命令

          这个命令比较简单直接输入就可以

          #:crontab -e

          出现如下窗口(第一次会提示你用那个编译器,随意选 一个就好了)

        

        执行和任务

        以后就可以输入你想执行的内容了.

         比如:*/2 * * * * date >> /home/postgres/time.log 它的意思就是每过两分钟就向time.log文件中写入当然的系统时光.

        以后ctrl+X退出保存就好了.

        2.保存crontab以后,我们还要重启crontab服务来使这个任务失效.

           sudo service cron restart

        3.看一下结果

         vim /home/postgres/time.log

         执行和任务

        参数说明(我找的很多例子,看看就明确了.)

        # m h  dom mon dow   command

        m 分钟 0-59

        h 小时 0-23

        dow 天1-31

        mon 月 1-12

        dow  星期 1-6  0表现星期天

        command 就是要执行的命令

        除了这些固定值外,还可以配合星号(*),逗号(,),和斜线(/)来表现一些其他的含义:

         

        星号          表现任意值,比如在小时部分填写 * 代表任意小时(每小时)

        逗号          可以允许在一个部分中填写多个值,比如在分钟部分填写 1,3 表现一分钟或三分钟

        斜线          一般配合 * 应用,代表每隔多长时光,比如在小时部分填写 */2 代表每隔两分钟。所以 */1 和 * 没有区分

        

        每日一道理
    流逝的日子像一片片凋零的枯叶与花瓣,渐去渐远的是青春的纯情与浪漫。不记得曾有多少雨飘在胸前风响在耳畔,只知道沧桑早已漫进了我的心爬上了我的脸。当一个人与追求同行,便坎坷是伴,磨难也是伴。

        

    1. * * * * *       date >> /home/postgres/time.log            # 每隔一分钟执行一次任务  
    2. 0 * * * *       date >> /home/postgres/time.log           # 每小时的0点执行一次任务,比如6:0010:00  
    3. 6,10 * 2 * *    date >> /home/postgres/time.log       # 每月2号,每小时的6分和10分执行一次任务  
    4. */3,*/5 * * * *  date >> /home/postgres/time.log        # 每隔3分钟或5分钟执行一次任务,比如10:0310:0510:06 

        

        3 * * * * /home/meng/hello.sh就是:每小时的03分执行/home/meng/下的hello.sh脚本*/5 9-17 * * mon,tue,wed,thur,fri wall "Are we there yet?"

        5 3 * * * /usr/bin/apt-get update 就是每天的03:05执行“/usr/bin/apt-get update

        */5 9-17 * * mon,tue,wed,thur,fri wall "Are we there yet?" 就是在所有的工作日的(9-17点)每过5分钟出现"Are we there Yet?"

    #每晚的21:30重启apache。
    30 21 * * * /usr/local/etc/rc.d/lighttpd restart
    
    #每月1、10、22日
    45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
    
    #每天早上6点10分
    10 6 * * * date
    
    #每两个小时
    0 */2 * * * date
    
    #晚上11点到早上8点之间每两个小时,早上8点
    0 23-7/2,8 * * * date
    
    #每月的4号和每个星期的星期一到星期三的早上11点
    0 11 4 * mon-wed date
    
    #1月份日早上4点
    0 4 1 jan * date

        

        http://wiki.ubuntu.org.cn/UbuntuHelp:CronHowto/zh

    文章结束给大家分享下程序员的一些笑话语录: PC软件体积大,是因为一个PC软件功能往往较多,能够满足你一个方面的需求,而一个iphone软件往往没几行代码,干一件很小的事情,自然需要的软件就多。就像吃西瓜和吃瓜子的来比数目,单位不同啊。

    --------------------------------- 原创文章 By 执行和任务 ---------------------------------

  • 相关阅读:
    PHP 操作MySQL时mysql_connect( )和Mysqli( )的两种报错机制
    OS + macOS Mojave 10.14.4 / sushi / ssh-keygen / ssh-copy-id
    script ajax / XHR / XMLHttpRequest
    java socket / No buffer space available
    OS + Ubuntu ARM Android
    mysql中批量替换数据库中的内容的sql
    linux下ubuntu系统安装及开发环境配置
    PHP 截取字符串专题
    在Ubuntu中用root帐号登录
    理解javascript的caller,callee,call,apply概念
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3095546.html
Copyright © 2020-2023  润新知