-
#!/bin/sh
-
host=$1
-
while [ $# -ne 1 ] ;do
-
-
-
-
shift
-
var=$1
-
arg=$(echo "$var" |awk -F '[}.{]+' '{print NF}')
-
-
-
if [ $arg -gt 1 ] ; then
-
-
-
start=$(echo "$var" |awk -F '[}.{]+' '{print $2}')
-
-
end=$(echo "$var" |awk -F '[}.{]+' '{print $3}')
-
-
-
start=$((start+0))
-
-
end=$((end+0))
-
-
else
-
-
-
end=$(echo $var|grep -Eo '[0-9]+')
-
-
-
end=$((end+0))
-
-
fi
-
-
-
-
suffix=${var:(-1)}
-
type=${var:0:3}
-
-
-
if [ ! -n "$start" ] ; then
-
-
start=1
-
fi
-
-
for((i=$start;i<=$end;i++)) ;do
-
-
if [ $i -lt 10 ] ; then
-
-
echo " ${type}0${i}$suffix"
-
-
else
-
-
echo " ${type}${i}$suffix"
-
fi
-
-
echo "######################################################################"
-
-
eval curl -s -k --user '{type}0${i}$suffix\&SERVICE=disk'|awk '/\/dev\//'
-
-
echo
-
-
done
-
-
done
好久没写脚本了,现在练习一下,需求是,磁盘使用情况都通过某个机器来监控,现在要获取各个组件的磁盘使用情况,主要用了shift来传递参数,具体用法:
[mail@packages ~]$ sh disk.sh 10.231.19.3 cog02o nbt01o "prx{05..13}b" #10.231.19.3是监控机,nbt/cog是hostname,有的是从01开始,有的可能从05或者12开始。
cog01o
######################################################################
/dev/sda2 4128448 2017828 1900908 52% /
/dev/sda1 99150 40664 53366 44% /boot
/dev/sda5 2015824 35916 1877508 2% /tmp
/dev/sda6 894923412 101206284 748257624 12% /var
......
阅读(1108) | 评论(0) | 转发(0) |