• Linux记录-定时crontab


    /etc/crontab文件和crontab -e命令区别

    1、格式不同

    分 时 日 月 星期 要运行的命令

    • 第1列分钟1~59
    • 第2列小时1~23(0表示子夜)
    • 第3列日1~31
    • 第4列月1~12
    • 第5列星期0~7(0和7表示星期天)
    • 第6列要运行的命令

    前者

    # 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

    后者

    #50 1 * * *  command

    2、使用范围

    修改/etc/crontab这种方法只有root用户能用,这种方法更加方便与直接直接给其他用户设置计划任务,而且还可以指定执行shell等等,
    crontab -e这种所有用户都可以使用,普通用户也只能为自己设置计划任务。然后自动写入/var/spool/cron/usename
    3.服务重启
     1 /etc/init.d/crond restart
     2 service crond restart
    crontab -e是某个用户的周期计划任务;/etc/crontab是系统的周期任务
    1. crontab -e 与 /etc/crontab 修改语法格式不一样,后者多一个 user 指定
    2. 不管用 crontab -e or 改 /etc/crontab 都不需要重新启动 crond 服务
     
    方法1
    换到root 的身份---22点01分关机
    su - root
    crontab -e (按a增加下)
    01 22 * * * /sbin/shutdown -h now   (或01 22 * * * /sbin/init 0)
    保存退出即可以
    方法2 vi /etc/crontab 在里面插入
    01 22 * * * root   /sbin/shutdown -h now
    或 01 22 * * * root   /sbin/init 0
    */5 * * * * /home/blue/do/rsyncfile.sh   ---每隔5分钟执行一次
    0 2 1 4 * /home/blue/do/rsyncfile_day.sh   ---4月1日凌晨两点执行

    crontab [-u username] [-l|-e|-r]
    选项与参数:
    -u :只有 root 才能进行这个任务,亦即帮其他使用者创建/移除 crontab 工作排程;
    -e :编辑 crontab 的工作内容
    -l :查阅 crontab 的工作内容
    -r :移除所有的 crontab 的工作内容,若仅要移除一项,请用 -e 去编辑

    0,15,30,45 18-06 * * * /bin/echo 'date' > /dev/console    ---在晚上6点到早上6点每隔15分钟执行一次

    实例1:每1分钟执行一次myCommand
    * * * * * myCommand
    实例2:每小时的第3和第15分钟执行
    3,15 * * * * myCommand
    实例3:在上午8点到11点的第3和第15分钟执行
    3,15 8-11 * * * myCommand
    实例4:每隔两天的上午8点到11点的第3和第15分钟执行
    3,15 8-11 */2 * * myCommand
    实例5:每周一上午8点到11点的第3和第15分钟执行
    3,15 8-11 * * 1 myCommand
    实例6:每晚的21:30重启smb
    30 21 * * * /etc/init.d/smb restart
    实例7:每月1、10、22日的4 : 45重启smb
    45 4 1,10,22 * * /etc/init.d/smb restart
    实例8:每周六、周日的1 : 10重启smb
    10 1 * * 6,0 /etc/init.d/smb restart
    实例9:每天18 : 00至23 : 00之间每隔30分钟重启smb
    0,30 18-23 * * * /etc/init.d/smb restart
    实例10:每星期六的晚上11 : 00 pm重启smb
    0 23 * * 6 /etc/init.d/smb restart
    实例11:每一小时重启smb
    * */1 * * * /etc/init.d/smb restart
    实例12:晚上11点到早上7点之间,每隔一小时重启smb
    * 23-7/1 * * * /etc/init.d/smb restart

  • 相关阅读:
    sql server 纵横表的转换
    url参数的编码解码Demo
    SqlServer 列的增加和删除
    asp.net下ajax.ajaxMethod使用方法(转)
    js中document.all 的用法
    cookie跨域,跨目录访问及单点登录。
    错误记录:html隐藏域的值存字符串时出错
    .NET下用C#实现邮箱激活功能
    js与C#服务端 json数据交互
    sqlserver数据可空插入报错
  • 原文地址:https://www.cnblogs.com/xinfang520/p/10481596.html
Copyright © 2020-2023  润新知