• 配置周期性计划任务


    一、定义:

      定时执行任务 

    二、格式

    1. 使用 student,检查自己的周期性计划任务,现在是空的 

    [student@desktop1 ~]$ crontab -l
    no crontab for student

    2. 使用crontab-e,编辑student自己的周期进化任务 ,每分钟向/home/student/cron 中追加 date 命令的输出结果

    [student@desktop1 ~]$ crontab -e

      * * * * * echo $(date) >> /home/student/cron.txt

    
    no crontab for student - using an empty one
    crontab: installing new crontab

    3. 用 crontab -l 确认计划任务的配置

    [student@desktop1 ~]$ crontab -l
    * * * * * echo $(date) >> /home/student/cron.txt

    4. 用 tail -f 命令,观察/home/student/cron.txt,确认计划任务是正常工作的 

    [student@desktop1 ~]$ tail -f /home/student/cron.txt 
    Thu Nov 3 16:36:01 CST 2016
    Thu Nov 3 16:37:01 CST 2016
    Thu Nov 3 16:38:01 CST 2016
    Thu Nov 3 16:39:01 CST 2016
    ...

    5. 用 crontab -e,编辑 student 自己的计划任务,每 2 分钟,向/home/student/cron.txt 追加 hello 字符串

    [student@desktop1 ~]$ crontab -e
    */2 * * * * echo hello >> /home/student/cron.txt

    6. student 用户,将 crontab -l 的输出结果重定向到/homt/student/mycrontab.cfg 文 件中

    [student@desktop1 ~]$ crontab -l >> ~/mycrontab.cfg

    7.student 删除自己的所有周期性计划任务 

    [student@desktop1 ~]$ crontab -r
    [student@desktop1 ~]$ crontab -l
    no crontab for student
    [student@desktop1 ~]$ 

    8. student 用户用~/mycrontab.cfg 文件中的配置信息重新创建自己的计划任务 

      [student@desktop1 ~]$ crontab ~/mycrontab.cfg
      [student@desktop1 ~]$ crontab -l
      * * * * * echo $(date) >> /home/student/cron.txt
      */2 * * * * echo hello >> /home/student/cron.txt

    9. 切换到 root 用户,观察/var/spool/cron/student,会看到 student 的计划任务 

    [root@desktop1 Desktop]# cat /var/spool/cron/student 
    * * * * * echo $(date) >> /home/student/cron.txt
    */2 * * * * echo hello >> /home/student/cron.txt

    10. root 用户编辑自己的计划任务,每月 1 日、11 日、21 日、31 日或者星期日,每分钟向 /root/cron.txt 追加一次 date 命令的输出结果

    [root@desktop1 Desktop]# crontab -e

      * * 1,11,21,31 * 0 date >> /root/cron.txt 

    
    no crontab for root - using an empty one
    crontab: installing new crontab

    11. 观察/var/spool/cron/root ,看到 root 用户的计划任务 

    [root@desktop1 Desktop]# cat /var/spool/cron/root 
    * * 1,11,21,31 * 0 date >> /root/cron.txt

    12. 用root用户删除student用户的所有周期性计划任务,并确认 

    [root@desktop1 Desktop]# crontab -r -u student
    [root@desktop1 Desktop]# crontab -l -u student
    no crontab for student
    [root@desktop1 Desktop]# 

    13. root 用户编辑/etc/crontab 创建系统计划任务,每天 23:59,以 root 用户身份清空 /tmp目录,

    另外每天晚上八点,以student身份,更新/home/student/time这个文件的 时间戳

    [root@desktop1 Desktop]# vim /etc/crontab
    
    SHELL=/bin/bash
    PATH=/sbin:/bin:/usr/sbin:/usr/bin
    MAILTO=root
    
    # For details see man 4 crontabs
    
    # Example of job definition:
    # .---------------- minute (0 - 59)
    # |  .------------- hour (0 - 23)
    # |  |  .---------- day of month (1 - 31)
    # |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
    # |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
    # |  |  |  |  |
    # *  *  *  *  * user-name  command to be executed
    
    59 23 * * * root rm -rf /tmp
    * 20 * * * student touch /home/student/time
  • 相关阅读:
    asp.net字符串分割函数用法
    Nginx启动/重启脚本详解
    jQuery获取对象简单实现方法
    python字符串格式化之学习笔记
    asp.net中Winform开发框架之数据即时更新的实现
    Nginx错误提示:504 Gateway Time-out解决方法
    实用的php购物车程序
    sql datalength与len区别用法
    异步加载js文件的方法总结
    面向对象泛型问题
  • 原文地址:https://www.cnblogs.com/tdcqma/p/6026573.html
Copyright © 2020-2023  润新知