zoukankan      html  css  js  c++  java
  • Centos通过crontab配置定时任务

    一.简单说明

    我们在实际使用Centos系统的过程中,可能会涉及一些定时任务的操作,比如定时清理环境上的垃圾文件。这里我遇到的一个问题就是,CI环境上构建的Docker IMAGE的清理,这里我采用了crontab来配置实现。

    二.crontab介绍

    crond是定时任务的一个守护进程,crontab是一个命令,常见于Unix和类Unix的操作系统,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于"crontab"文件中,以供之后读取执行。可以通过crontab命令添加或编辑需要执行的定时任务。

    三.crontab操作

    crontab -u   设定某个用户的cron服务
    crontab -l   列出某个用户cron服务的详细内容
    crontab -r   删除某个用户的cron服务
    crontab -e   编辑某个用户的cron服务
    crontab -i   打印提示,输入yes等确认信息
    

    四.基本格式

    # 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
    定时任务的每段为:分,时,日,月,周,用户,命令
    

    具体说明:
    第1列:表示分钟1~59 每分钟用*或者 */1表示
    第2列:表示小时1~23(0表示0点)
    第3列:表示日期1~31
    第4列:表示月份1~12
    第5列:表示星期0~6(0表示星期天)
    第6列:表示要运行的命令

    除了数字还有几个特殊的符号:"*"、"/"和"-"、","

    • "*"代表所有的取值范围内的数字
    • "/"代表每的意思,"/5"表示每5个单位
    • "-"代表从某个数字到某个数字
    • ","分开几个离散的数字

    注意:定时执行的任务脚本或者命令:

    • 如果存在文件,需要写绝对路径
    • 最好增加重定向日志

    五.举例说明

    • 创建cron脚本文件,命名为cronjob.cron
    [root@k8s001 ~]# touch cronjob.cron
    [root@k8s001 ~]# vi cronjob.cron
    */5 * * * * echo "cronjob test"     表示,每隔15分钟,执行一次打印命令
    
    • 添加定时任务
    [root@k8s001 ~]# crontab cronjob.cron
    
    • 查看定时任务是否成功
    # 通过crontab查看
    [root@k8s001 ~]# crontab -l
    # 也可以通过查看/var/spool/crob目录下是否生成对应的cron脚本
    [root@k8s001 ~]# ls /var/spool/cron
    
  • 相关阅读:
    sql server 行转列
    java 加密解密WORD文档
    数据库重新连接存储
    MSSQL 删除索引
    WORD添加批注(JAVA)
    JAVA添加WORD文档批注
    MYECLIPSE说明书
    K3二次开发后台表
    css css预处理器
    javascript 视频播放指定的时间段
  • 原文地址:https://www.cnblogs.com/yuhaohao/p/12939527.html
Copyright © 2011-2022 走看看