linux 设置定时任务crontab

linux 设置定时任务crontab
前言
做自动化测试写的脚本需要设置定制任务,在指定的时间去执行,这就需要用到定时任务。之前用jenkins可以在里面设置定时任务,很好用,其实在linux上也可以用crontab做定时任务。

cron
在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。
cron的配置文件称为“crontab”,是“cron table”的简写。

crontab一般在目录/etc/crontab, 可以用cat 命令查看里面的内容
cat /etc/crontab

  • MAILTO=root是说,当 /etc/crontab 这个档案中的例行性命令发生错误时,会将错误讯息或者是屏幕显示的讯息传给谁?由于 root 并无法再用户端收信,因此,我通常都將这个 e-mail 改成自己的账号,好让我随时了解系统的状态!
  • 17 * * * * root cd / && run-parts --report /etc/cron.hourly: 我们可以发现,五个数字后面接的是 root ,这一行代表的是『执行的级别为root身份』当然,你也可以将这一行改为成其他的身份!而 run-parts代表后面接的 /etc/cron.hourly 是『一个目录内(/etc/cron.hourly)的所有可执行文件』,也就是说,每个小时的17分,系统会以root身份去/etc/cron.hourly这个目录下执行所有可执行的文件l!后面三行也是类似的意思!你可以到 /etc/ 底下去看看,系统本来就预设了这4个目录!你可以将每天需要执行的命令直接写到/etc/cron.daily即可,还不需要使用到crontab -e的程式!

crontab用法
crontab命令用于安装、删除或者列出用于驱动cron后台进程的表格。用户把需要执行的命令序列放到crontab文件中以获得执行。每个用户都可以有自己的crontab文件。/var/spool/cron下的crontab文件不可以直接创建或者直接修改。该crontab文件是通过crontab命令创建的
在crontab文件中如何输入需要执行的命令和时间。该文件中每行都包括六个域,其中前五个域是指定命令被执行的时间,最后一个域是要被执行的命令。每个域之间使用空格或者制表符分隔。格式如下:
minute hour day-of-month month-of-year day-of-week commands
合法值 00-59 00-23 01-31 01-12 0-6 (0 is sunday) 命令行

crontab命令常用的特殊字符:

    • 表时任何时间
  • , 表示分割,10,20,30表示分表在10分20分30分时执行
    • 表示一个段,1-5 就是1到5点
  • /n 表示每隔n单位执行一次,比如第二个参数, */2就是每隔2个小时执行一次,也可以写成1-23/2

crontab命令各参数说明:

  • -e 执行文字编辑器来设定时程表,内定的文字编辑器是vi
  • -l 列出目前的所有时程表
  • -r 删除目前的时程表
  • -v 列出cron作业的状态

猜你喜欢

转载自www.cnblogs.com/We612/p/11225122.html