当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > linux crontab定时命令

Unix/Linux
Linux crontab定时执行任务 命令格式与详细例子
linux 查看用户及用户组的方法
让Linux系统有效防御ARP攻击的实用技巧
Linux 常用软件列表
linux wget 一个强大的下载命令
linux 常用脚本、命令
linux 磁盘配额 简单介绍
Linux服务器架设笔记 Squid服务器配置
ubuntu intel 集成显卡安装
ubuntu 9.04 X3100 显卡开启3D特效
Ubuntu 8.10 Server Ruby 的安装方法
Ubuntu root帐户密码修改
ubuntu下apt-get 命令参数
Ubuntu Linux下实现QQ的三种方式
Ubuntu 8.04中建立PHP+MySQL环境
Ubuntu常用软件大全
Ubuntu系统下安装Aircrack-ng
Ubuntu实现FTP功能
ubuntu 字体美化实现方法
ubuntu下netbeans汉字显示残缺问题

Unix/Linux 中的 linux crontab定时命令


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-16   浏览: 32 ::
收藏到网摘: n/a

下面就介绍一下在我们开发过程中经常要用到的crontab命令,以及一些基本的定时任务文件的书写规则。

  名称 : crontab

  使用权限 : 所有使用者

  使用方式 :

  crontab filecrontab [ -u user ] [ -u user ] { -l | -r | -e }

  说明 :

  crontab 是用来让使用者在固定时间或固定间隔执行程式之用,换句话说,也就是类似使用者的时程表。

  -u user : 是指设定指定 user 的时程表,这个前提是你必须要有其权限(比如说是 root)才能够指定他人的时程表。如果不使用 -u user的话,就是表示设定自己的时程表。

  参数 :

  -e : 执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定 VISUAL 环境变数来指定使用那个文字编辑器(比如说 setenv VISUAL joe)

  注:crontab -e后,会自动将添加的定时任务文件存到/var/spool/cron/tabs/zxin10文件中去(zxin10是用户名,表示在当前用户下设置定时任务)

  -r : 删除目前的时程表

  -l : 列出目前的时程表

  时程表的格式如下 :

  f1 f2 f3 f4 f5 program

  其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程式。

  当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程式,其余类推

  当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其余类推

  当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其余类推

  当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,f2 为 a, b, c,... 时表示第 a, b, c...个小时要执行,其余类推

  使用者也可以将所有的设定先存放在档案 file 中,用 crontab file 的方式来设定时程表。

  使用方法:

  用vi编辑一个文件cronfile,然后在这个文件中输入格式良好的时程表。编辑完成后,保存并退出。

  在命令行输入

  xxxxxx@linux: crontab cronfile

  这样就将cronfile文件提交给cron进程,同时,新创建cronfile的一个副本已经被放在/var/spool/cron目录中,文件名就是用户名。

  注:crontab cronfile操作后会将原来存在/var/spool/cron目录下用户名的文件中的信息覆盖掉。

  例子:

  */5 * * * * /home/zxin10/batchoperate/batch_oper.sh 每五分钟执行一次batch_oper.sh 脚本

  注意: 当程式在你所指定的时间执行后,系统会寄一封信给你,显示该程式执行的内容,若是你不希望收到这样的信,请在每一行空一格之后加上>/dev/null 2>&1 即可。