#set -x pid1=`ps -ef|grep QD|grep -v grep |awk '{print $14}'|grep QWorld` pid2=`ps -ef|grep QD|grep -v grep |awk '{print $14}'|grep QDBProxy` pid3=`ps -ef|grep QD|grep -v grep |awk '{print $14}'|grep QGameServer` pid4=`ps -ef|grep QD|grep -v grep |awk '{print $14}'|grep QGateway` pid5=`ps -ef|grep QD|grep -v grep |awk '{print $14}'|grep QCommunity` DC_PATH=/usr/local/services/CloudDCAgent_L5-1.0/alarm for i in {1..5} a=pid eval pidname="$"$a$i #echo $pidname if [ -z pid$i ] $DC_PATH/cloud_alarm 100697808 "the rpgserver is down" -o rpgserver echo $pidname "The process of death, to save it,now" echo "everything is ok" >/dev/null 2>&1 done

使用eval进行两个变量同时调用

a=pid
eval b="$"$a$i
echo $b


第二种调用方式

for i in $pid{1..5}

$i =pid1 pid2 pid3 pid4 pid5
#!/bin/sh
#set -x
pid1=`ps -ef|grep QD|grep -v grep |awk '{print $14}'|grep QWorld`
pid2=`ps -ef|grep QD|grep -v grep |awk '{print $14}'|grep QDBProxy`
pid3=`ps -ef|grep QD|grep -v grep |awk '{print $14}'|grep QGameServer`
pid4=`ps -ef|grep QD|grep -v grep |awk '{print $14}'|grep QGateway`
pid5=`ps -ef|grep QD|grep -v grep |awk '{print $14}'|grep QCommunity`
DC_PATH=/usr/local/services/CloudDCAgent_L5-1.0/alarm
for i in $pid{1..5}
        echo $i
~


淘宝小店-运维学习参考资料

http://shop62632578.taobao.com