• Crontab 定时任务格式参数


    crontab 定时执行 任务

    格式:
      * * * * * 
    分别对应表示: 分钟(
    0-59) 小时(0-23) 日(1-31) 月份(1-12) 星期(0-6
    星号(
    *):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。 逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9” 中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6” 正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。 同时正斜线可以和星号一起使用, 例如*/5,第一个位置就是每隔5秒,如果用在minute字段,表示每多少分钟。
    时间格式示例:
      每五分钟执行 */5 * * * *
      每小时执行 0 * * * *
      每天执行 0 0 * * *
      每周执行 0 0 * * 0
      每月执行 0 0 1 * *
      每年执行 0 0 1 1 *

    crontab 问题:

    1、crontab中的输出配置:
        crontab中经常配置运行脚本输出为:>/dev/null 2>&1,来避免crontab运行中有内容输出。
    
    2、shell命令的结果可以通过'> '的形式来定义输出;
        /dev/null 代表空设备文件  
        
        > 代表重定向到哪里,例如:echo "test" > test.txt 
        
        1 表示stdout标准输出,系统默认值是1,所以">/dev/null"等同于"1>/dev/null"
        
        2 表示stderr标准错误
         
        & 表示等同于的意思,2>&1,表示2的输出重定向等同于1 
        
    3、重定向输出语句的含义:
        1>/dev/null 
            表示标准输出重定向到空设备文件,也就是不输出任何信息到终端,不显示任何信息。
        2>&1         表示标准错误输出重定向等同于标准输出,因为之前标准输出已经重定向到了空设备文件,所以标准错误输出也重定向到空设备文件。
        
    4、crontab 中 % 是表示换行,创建时间命令必须写成 \% 
        date '+%Y%m%d' 
        要写成:
        date '+\%Y\%m\%d'
    
    5、环境变量问题导致crontab 任务执行不了 :
        加入环境变量
    0 * * * * ./etc/profile;/bin/sh java.sh
            
    6、crontab 的日志位置一般位于/var/log/cron,利用下面的语句即可查看日志。
    tail -f /var/log/cron

    环境变量延伸:

    /etc/profile
       /etc/bashrc
      .bash_profile
      .bashrc
    用户在登陆Linux操作系统的时候,
    "/etc/profile", "~/.bash_profile" 等配置文件会被自动执行。 执行过程 -- 首先启动 "/etc/profile", 然后启动用户目录下的 "~/.bash_profile", 如果"~/.bash_login""~/.profile" 文件存在的时候也会在执行 "~/.bash_profile" 后被依次调用。 /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行,并从/etc/profile.d目录的设置文件中搜集shell的设置; /etc/bashrc:为每一个运行bash shell的用户执行此文件,当bash shell被打开时,该文件被读取; ~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件, ~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时及每次打开新的shell时,该文件被读取; ~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件; /etc/profile是全局性的功能,其中设置的变量作用于所有用户; ~/.bash_profile中设置的变量能继承/etc/profile中的变量并作用于用户; ~/.bash_profile 是交互式、login 方式进入 bash 运行的; ~/.bashrc 是交互式 non-login 方式进入 bash 运行的;
  • 相关阅读:
    数据表格
    数据表格
    数据表格
    布局
    表单
    表单
    Java知识点梳理——继承
    Java知识点梳理——抽象类和接口
    面试心得与总结—BAT、网易、蘑菇街
    Java知识点梳理——多态
  • 原文地址:https://www.cnblogs.com/sharesdk/p/7852903.html
Copyright © 2020-2023  润新知