Chinaunix首页 | 论坛 | 博客
  • 博客访问: 40214
  • 博文数量: 4
  • 博客积分: 1460
  • 博客等级: 上尉
  • 技术积分: 62
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-30 10:22
文章分类

全部博文(4)

文章存档

2010年(1)

2007年(3)

我的朋友
最近访客

分类: LINUX

2007-07-30 12:41:07

Linux循环执行的例行性命令的建立:

 

使用crontab来调用shell文件即可,但在调用前必须确保所写的shell文件可执行:

chmod guo+x  ./test.sh

 

1,用户的crontab设定

crontab其实就是cron这个服务,当你下达crontab的指令之后,会将你的命令写入/var/spool/cron/下(注意此目录下的文件不可直接编辑,但可下载到windows下改成txt文件后查看,内容与直接用crontab –l查看的内容相同。)。

       crontab的查看采用/etc/crontab –l命令,编辑例行命令采用/etc/crontab –e命令。

Crontab -e的前5个参数用来指定循环执行的频率和时间,具体意义及取值范围如下:

意义

日期

月份

范围

0-59

0-23

1-31

1-12

0-60代表sunday

 

以下是一些例行命令的例子:

 

59 23 1 5 * mail pigpp < /home/ test/lover.txt  //51的晚上2359分发送邮件,邮件内容为lover.txt

*/5 * * * * /opt/lampp/bin/sql.sh  //每隔5分钟执行一次sql.sh脚本

30,45 12,23 * * *  /opt/lampp/bin/sql.sh  //每天的12点和23点的30分和45分执行一次sql.sh脚本

*/10 12-23 * * 0  /opt/lampp/bin/sql.sh  //每个周日的12点到23点间,每隔10分钟执行一次sql.sh脚本

 

2,系统的crontab设定

用户采用crontab –e来进行设定的,因为crontab其实是/usr/bin/crontab。而/etc/crontab是系统的循环例行命令,用vi打开如下:

 

SHELL=/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin

MAILTO=root              //MALTO是说/etc/crontab发生错误时,将错误信息发给谁。由于root并无法在用户端中收信,因此建议将这个EMAIL改成自己的帐号,方便随时了解系统状态。

HOME=/

 

# run-parts

01 * * * * root run-parts /etc/cron.hourly

02 4 * * * root run-parts /etc/cron.daily         //可以将系统每天需要执行的操作写到cron.daily中。

22 4 * * 0 root run-parts /etc/cron.weekly

42 4 1 * * root run-parts /etc/cron.monthly

 

也可以在此新建例行命令处理每天事务。

 

 

 

测试中/opt/lampp/bin/sql.sh内容如下:

/opt/lampp/bin/mysql -uroot -e "use ch;select channel_name from tb_channel where channel_id=1">>/opt/lampp/bin/abc.txt;

直接将MYSQL查询输出到一个abc.txt文件中。

 

 

 

 

 

 

 

阅读(2515) | 评论(0) | 转发(0) |
0

上一篇:PHP编程规划

下一篇:linux权限学习

给主人留下些什么吧!~~