展开全部
一、创建存放shell脚本的文件夹
[root@data]# mkdir shell
二、编写shell脚本
使用vim、nano、vi等任意文本编辑工具,都可以编写shell脚本。使62616964757a686964616fe58685e5aeb931333365643661用“nano test.sh”在当前目录下,创建一个测试shell脚本。shell脚本的后缀习惯性写成“.sh”。
[root@shell]# vim getdata.sh
脚本内容:
#!/bin/sh
Datetime=$(date "+%Y-%m-%d %H:%M:%S")
filelog="/data/shell/std.log"
exec 3< /data/shell/server.cfg
echo "#######################START############################" >>
$filelog
while read server
do
echo "" >> $filelog
echo ">>$Datetime , updategetdata -> $server~" >> $filelog
result=`wget -q -T 5 http://$server:8080/col/ -O -`
if [ "$?" == "0" ];then
echo ">>$Datetime , update getdata success -> $server~" >> $filelog
else
echo ">>$Datetime , updategetdata failed -> $server~" >> $filelog
fi
echo "" >> $filelog
echo "" >> $filelog
done
echo "############################END#######################" >>
$filelog
保存退出:wq! 即可生成shell文件 getdata.shell。
三、对shell脚本添加执行权限。
[root@shell]# chmod 755 getdata.sh
由于新建的shell脚本没有执行权限,首先使用“chmod 755 getdata.sh。
四、创建shell脚本依赖的文件
[root@shell]# vim server.cfg (添加接口用到ip号集合)。
格式:
ip
ip
........
[root@shell]# vim std.log
六、执行脚本测试
[root@shell]# ./getdata.sh
七、添加到定时任务
[root@shell]# crontab -e (编写后保存即可生效)。
举例:每5分钟执行一次
*/5 * * * * /bin/bash /data/shell/getdata.sh >/dev/null 2>&1
八、查看是否添加进去
[root@shell]#crontab -l 。
1.crontab参数
-u:这个参数可以让我们去编辑其他人的crontab,如果没有加上这个参数的话就会开启自己的crontab
crontab -u 使用者名称
-l:可以列出crontab的内容
-r:可以移除crontab
-e:可以使用系统预设的编辑器,开启crontab
-i:可以移除crontab,会跳出系统信息让你再次确定是否移除crontab
2.crontab时间格式说明
minute(分)可以设置0-59分
hour(小时)可以设置0-23小时
day of month(日期)可以设置1-31号
month(月份):可以设置1-12月
day of week(星期):可以设置0-7星期几,其中0和7都代表星期天,或者我们也可以使用名称来表示星期天到星期一,例如sun表示星期天,mon表示星期一等等
3.crontab时间格式范例
1-3表示123
1-9/2表示13579
4.crontab范例
每五分钟执行 */5 * * * *
每小时执行 0 * * * *
每天执行 0 0 * * *
每周执行 0 0 * * 0
每月执行 0 0 1 * *
每年执行 0 0 1 1 *
5.介绍crontab文件
/etc/crontab
在这个文件里并没有记录系统要执行哪些工作,而是记录了下面四个子目录。
/etc/cron.hourly
/etc/cron.daily
/etc/cron.weekly
/etc/cron.monthly
这些子目录里存放了一些脚本,到了crontab所指定的时间点,系统就会去执行这些子目录里的脚本。
参考资料
crontab命令详解.CSDN博客[引用时间2017-12-28]
定时任务(每5分钟执行一次各机房访问接口).CSDN博客[引用时间2017-12-28]