精华内容
下载资源
问答
  • crontab命令

    2018-08-28 17:00:24
    一、crontab命令 1.格式 crontab [-u user] file crontab [-u user] [ -e | -l | -r ] 2.功能 通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、...

    一、crontab命令

    1.格式

    crontab [-u user] file

    crontab [-u user] [ -e | -l | -r ]

    2.功能

    通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。这个命令非常设合周期性的日志分析或数据备份等工作。

    3.参数

    -u user:用来设定某个用户的crontab服务,例如,“-u ixdba”表示设定ixdba用户的crontab服务,此参数一般有root用户来运行。 file:file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab。如果在命令行中没有指定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将它们载入crontab。

    -e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。

    -l:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。

    -r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。 -i:在删除用户的crontab文件时给确认提示。

    4.文件格式

    基本格式 : 
    *  *  *  *  *  command 
    分 时 日 月 周 命令 
    第1列表示分钟1~59 每分钟用*或者 */1表示 
    第2列表示小时1~23(0表示0点) 
    第3列表示日期1~31 
    第4列表示月份1~12 
    第5列标识号星期0~6(0表示星期天) 
    第6列要运行的命令 

    展开全文
  • Crontab 命令

    2018-11-07 20:01:48
    crontab命令常见于Unix和Linux的操作系统之中,用于设置周期性被执行的指令。 工具地址: https://tool.lu/crontab/ 服务相关命令: # 安装 yum -y install vixie-cron crontabs #查看状态 service crond status #...

    crontab概念:

    crontab命令常见于Unix和Linux的操作系统之中,用于设置周期性被执行的指令。

    工具地址:

    https://tool.lu/crontab/

    服务相关命令:

    # 安装
    yum -y install vixie-cron crontabs
    #查看状态
    service crond status
    #启动
    service crond start
    #关闭
    service crond stop
    #重启
    service crond restart
    

    crontab 命令:

        crontab [-u user] file
        crontab [-u user] [ -e | -l | -r ]
    
    • 命令参数:
    -u user:用来设定某个用户的crontab服务,例如,“-u ixdba”表示设定ixdba用户的crontab服务,此参数一般有root用户来运行。
    
    file:file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab。如果在命令行中没有指定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将它们载入crontab。
    
    -e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。
    
    -l:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。
    
    -r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。
    
    -i:在删除用户的crontab文件时给确认提示
    

    crontab格式:

    每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下:

    minute   hour   day   month   week   command
    # 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  表示星期(0 或 7 表示星期天)
    |  |  |  |  |  .------------------- username  以哪个用户来执行 
    |  |  |  |  |  |            .------ command  要执行的命令,可以是系统命令,也可以是自己编写的脚本文件
    |  |  |  |  |  |            |
    *  *  *  *  * user-name  command to be executed
    

    案例:

    一个普通标题 一个普通标题
    */1 * * * * service httpd restart 每一分钟 重启httpd服务
    0 */1 * * * service httpd restart 每一小时 重启httpd服务
    30 21 * * * service httpd restart 每天 21:30 分 重启httpd服务
    26 4 1,5,23,28 * * service httpd restart 每月的1号,5号 23 号 28 号 的4点26分,重启httpd服务
    26 4 1-21 * * service httpd restart 每月的1号到21号 的4点26分,重启httpd服务
    */2 * * * * service httpd restart 每隔两分钟 执行,偶数分钟 重启httpd服务
    1-59/2 * * * * service httpd restart 每隔两分钟 执行,奇数 重启httpd服务
    0 23-7/1 * * * service httpd restart 每天的晚上11点到早上7点 每隔一个小时 重启httpd服务
    0,30 18-23 * * * service httpd restart 每天18点到23点 每隔30分钟 重启httpd服务
    0-59/30 18-23 * * * service httpd restart 每天18点到23点 每隔30分钟 重启httpd服务
    59 1 1-7 4 * test ‘date +%w’ -eq 0 && /root/a.sh 四月的第一个星期日 01:59 分运行脚本 /root/a.sh ,命令中的 test是判断,%w是数字的星期几
    展开全文
  • crontab 命令

    2018-06-21 15:23:56
    19. crontab 定时任务通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。这个命令非常适合周期性的日志分析或数据...

    19. crontab 定时任务

    通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。这个命令非常适合周期性的日志分析或数据备份等工作。

    19.1. 命令格式

    crontab [-u user] file crontab [-u user] [ -e | -l | -r ]

    19.2. 命令参数

    • -u user:用来设定某个用户的crontab服务;
    • file:file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab。如果在命令行中没有指定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将它们载入crontab。
    • -e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。
    • -l:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。
    • -r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。
    • -i:在删除用户的crontab文件时给确认提示。

    19.3. crontab的文件格式

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

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

    19.4. 常用方法

    创建一个新的crontab文件

    向cron进程提交一个crontab文件之前,首先要设置环境变量EDITOR。cron进程根据它来确定使用哪个编辑器编辑crontab文件。9 9 %的UNIX和LINUX用户都使用vi,如果你也是这样,那么你就编辑$HOME目录下的. profile文件,在其中加入这样一行:

    EDITOR=vi; export EDITOR
    

    然后保存并退出。不妨创建一个名为<user> cron的文件,其中<user>是用户名,例如, davecron。在该文件中加入如下的内容。

    # (put your own initials here)echo the date to the console every
    # 15minutes between 6pm and 6am
    0,15,30,45 18-06 * * * /bin/echo 'date' > /dev/console
    

    保存并退出。注意前面5个域用空格分隔。

    在上面的例子中,系统将每隔1 5分钟向控制台输出一次当前时间。如果系统崩溃或挂起,从最后所显示的时间就可以一眼看出系统是什么时间停止工作的。在有些系统中,用tty1来表示控制台,可以根据实际情况对上面的例子进行相应的修改。为了提交你刚刚创建的crontab文件,可以把这个新创建的文件作为cron命令的参数:

    $ crontab davecron
    

    现在该文件已经提交给cron进程,它将每隔1 5分钟运行一次。同时,新创建文件的一个副本已经被放在/var/spool/cron目录中,文件名就是用户名(即dave)。

    列出crontab文件

    使用-l参数列出crontab文件:

    $ crontab -l
    0,15,30,45 18-06 * * * /bin/echo `date` > dev/tty1
    

    可以使用这种方法在$HOME目录中对crontab文件做一备份:

    $ crontab -l > $HOME/mycron
    

    这样,一旦不小心误删了crontab文件,可以用上一节所讲述的方法迅速恢复。

    编辑crontab文件

    如果希望添加、删除或编辑crontab文件中的条目,而EDITOR环境变量又设置为vi,那么就可以用vi来编辑crontab文件:

    $ crontab -e
    

    可以像使用vi编辑其他任何文件那样修改crontab文件并退出。如果修改了某些条目或添加了新的条目,那么在保存该文件时, cron会对其进行必要的完整性检查。如果其中的某个域出现了超出允许范围的值,它会提示你。 我们在编辑crontab文件时,没准会加入新的条目。例如,加入下面的一条:

    # DT:delete core files,at 3.30am on 1,7,14,21,26,26 days of each month
    30 3 1,7,14,21,26 * * /bin/find -name 'core' -exec rm {} \;
    

    保存并退出。

    注解

    最好在crontab文件的每一个条目之上加入一条注释,这样就可以知道它的功能、运行时间,更为重要的是,知道这是哪位用户的定时作业。

    删除crontab文件

    $crontab -r
    

    19.5. 使用实例

    实例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

    0 23-7 * * * /etc/init.d/smb restart
    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,631
精华内容 4,652
关键字:

crontab命令