linux 计划任务

crontab


        周期性的时间计划任务,时间过了也不执行,到下一个周期再执行


        /etc/init.d/crond start         开启crond服务


        vim /etc/crontab                crontab配置文件
            
            01 * * * * root run-parts /etc/cron.hourly      
            02 4 * * * root run-parts /etc/cron.daily
            22 4 * * 0 root run-parts /etc/cron.weekly
            42 4 1 * * root run-parts /etc/cron.monthly


            第一字段:分钟,取值范围0到59
            第二字段:小时,取值范围0到24
            第三字段:日,取值范围具体看月份
            第四字段:月,取值范围1到12
            第五字段:星期,取值范围0到7, 0和7都代表星期天
            第六字段:执行任务的身份
            第七字段:要执行的命令,多条命令用分号隔开,用括号括起来;
                     run-parts定义后面是一个目录,后面必须写目录路径,代表运行此目录里的所有脚本
            
            时间格式
                
                *   代表每分钟,每小时,每天,每月,每周
                ,   逗号代表分隔时间
                -   代表时间段
                /n  代表每隔n个单位


            例:
                每个小时的前30分钟执行任务
                    
                    1-30    *   *   *   *


                每个小时的第29,58分钟执行


                    29,58   *   *   *   *


                每隔2分钟执行


                    */2     *   *   *   *


                每个月的15号每三个小时,每两分钟,执行任务
                    
                    */2     */3     15  *   *


                每个月的15号每三个小时,每两分钟,执行任务或者星期七每三个小时,每两分钟执行任务
                    
                    */2     */3     15  *   7


                练习:
                    
                    每天的1,3,7,8,13,21点的05分执行
                    每月的5号到20号的4点到13点的15分执行
                    每个星期三的每两小时
                    每年的5到8月的星期三和星期天的4点01分执行


            
            例:
                vim /etc/crontab
                    
                    * * * * * root echo 'hello' > /dev/pts/2


                保存退出,不需要重启服务,保证服务是启动状态,每分钟我们第二个终端就会收到hello


        
        crontab -e                      设定自己的时间任务
            
            * 21 * * * init 0       每天21点关机


        
        crontab -l                      查看自己的时间任务


        crontab -l -u root              查看root用户的时间任务


        crontab -e -u root              编辑root用户的时间任务


        crontab -r                      删除当前用户所有时间任务


        crontab -i                      删除前要求确认


    
        /etc/cron.allow                 允许使用crond的普通用户名,有此文件不用考虑cron.deny


        /etc/cron.deny                  拒绝使用crond的普通用户名

你可能感兴趣的:(linux 计划任务)