`
dabing013
  • 浏览: 40126 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

crontab命令

阅读更多

cron是系统主要的调度进程,可以在无需人工干预的情况下运行作业。
crontab命令允许用户提交、编辑或是删除相应的作业。每个用户都可以有一个crontab文件来保存调度信息,系统管理员通过cron.deny和cron.allow两个文件来禁止或是允许用户拥有自己的crontab文件文件存放路径
1)crontab的域
每个条目中各个域的意义和格式
第1列 分钟1~59
第2列 小时1~23   (0表示子夜)
第3列 日1~31
第4列 月1~12
第5列 星期0~6    (0表示星期天)
第6列 要运行的命令                         

2)crontab的格式
分<>时<>日<>月<>星期<>要运行的命令
其中<>代表空格,分成六个域,与上面的列表一一对应。在域中,可以用'-'横杠来表示一个时间范围,还可以使用逗号',',如周一到周四用1-4表示,周一和周四用1,4表示,也可以用*表示连续的时间段

crontab条目举例

1 23 * * * /home/script/run.sh         #每晚23:01运行/home/script/run.sh
0,30 18-23 * * * /home/bin/dbcheck.sh  #每晚18:00-23:00中间之间,每隔30分钟运行/apps/bin/dbcheck.sh
45 4 1,10,22 * * /home/bin/backup.sh   #每月1、10、22号4:45运行/home/bin/backup.sh
0 23 * * 0 /home/bin/qtrend.sh         #每周日23:00运行/home/bin/qtrend.sh

注:当使用crontab运行shell脚本时,要由用户给出脚本的绝对路径,设置相应的环境变量(使用绝对路径)

3)crontab命令选项
一般形式

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

-u 用户名
-e 编辑crontab文件
-l 列出crontab中的条目
-r 删除crontab文件

4)创建crontab文件
在考虑向cron进程提交一个crontab文件之前,首先要做的一件事情就是设置环境变量EDITOR。cron进程根据它来确定使用哪个编辑器编辑crontab文件。大部分的UNIX和LINUX用户都使用v i,如果你也是这样,那么你就编辑$ HOME目录下的.profile文件,在其中加入这样一行:

EDITOR=vi; export EDITOR

 然后保存并退出。

此处惯例创建一个<user>cron文件,user是用户名,例如idscron,在文件中加入如下内容:
#系统每隔15分钟向控制台输入一次当前时间

0,15,30,45 18-06 * * * /bin/echo 'date' > /dev/console

保存并退出,确保5个域用空格分隔
提交你创建crontab文件,将文件名作为cron命令的参数:

$ crontab idscron

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

5)列出crontab文件

$ crontab -l 

#系统每隔15分钟向控制台输入一次当前时间

0,15,30,45 18-06 * * * /bin/echo 'date' > /dev/console

将会显示如上的内容,我们也可以使用下面的方法对crontab文件做备份

$ crontab -l >$HOME/mycron

 6)编辑及删除crontab文件

$ crontab -e 

可以像使用vi编辑器一样

$ crontab -r 

删除crontab文件

1
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics