Linux-计划任务

Linux系统中的计划任务、周期性任务的服务是cron,主程序包为cronie,cronie提供了crond守护进程及相关辅助工具:crontab。

cron任务分类两类

  • 系统cron任务:主要用于系统自身的维护(比如写缓存数据到硬盘、日志清理等),手动编辑/etc/crontab维护,一般不建议修改。
  • 用户cron任务:使用crontab命令维护。

crontab是系统管理员用来维护计划任务的主要工具,本文主要介绍crontab的使用。

cron任务配置格式

crontab的配置格式可以参考/etc/crontab

[root@VM_41_201_centos ~]# cat /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

这是系统任务,一般不要修改,用户的cron任务会保存在/var/spool/cron/<username>中,如root用户的cron任务:/var/spool/cron/root

特殊说明:* 位置除了可以指定单一值,还可以指定多个值

星号(*):代表所有可能的值; 
逗号(,):多个值,如 “* * * * 6,7” 表示每周六、日;
中杠(-):整数范围,如“2-6”表示“2,3,4,5,6” ;
斜线(/):时间间隔,如 “*/5 * * * *” 表示每5分钟。

crontab命令

SYNOPSIS

crontab [-u user] file
crontab [-u user] [-l | -r | -e] [-i] [-s]
crontab -n [ hostname ]
crontab -c

OPTIONS

# 常用选项
-u user  指定哪个用的任务(默认当前用户)
-l  查看任务
-e  编辑任务(进入vim编辑器,并且能够编辑已有的任务)
-r  清空任务(如需删除单条或部分任务,需要使用-e命令进入vim编辑)

示例

# 每个整点时刻查询磁盘分区使用情况写入文件
0 * * * * df -h >> /data/diskinfo
# 每天凌晨3点执行shell脚本
0 3 * * * /root/sh/mysql-backup.sh
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Linux定时任务Crontab命令详解 linux 系统则是由 cron (crond) 这个系统服务来控制的。...
    孙燕超阅读 1,834评论 0 4
  • 要是任务计划在指定时间自动运行,计划任务的服务必须是启动的。1、使用at命令调用atd进程设置在某个特定的时间,执...
    小慕先森阅读 354评论 1 0
  • Linux 系统提供了使用者控制计划任务的命令 :crontab 命令。 一、crond简介 crond是linu...
    happeace阅读 1,797评论 0 53
  • 简介:Crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。本课程通过对Cron...
    Amisuer阅读 4,708评论 0 1
  • 现如今,女性不孕的情况屡见不鲜,病因也千差万别,其中,输卵管堵塞是比较重要的因素,占不孕患者的1/3,近年来有...
    沃筱蝶阅读 209评论 0 0