- 论坛徽章:
- 0
|
此问题已解答, 答案已在13楼.希望对大家有帮助。
mtr -r -n 210.5.159.55 |grep "\%" 2>/dev/null | while read line
do
set $line
HOST[$n]=$1
LOSS[$n]=$2
RCVD[$n]=$3
SENT[$n]=$4
BEST[$n]=$5
AVG[$n]=$6
((n=n+1))
echo ${HOST[@]}
done
以上代码可以输出如下信息
10.20.0.1
10.20.0.1 58.214.5.161
10.20.0.1 58.214.5.161 58.215.70.49
10.20.0.1 58.214.5.161 58.215.70.49 58.215.66.241
10.20.0.1 58.214.5.161 58.215.70.49 58.215.66.241 58.215.66.189
10.20.0.1 58.214.5.161 58.215.70.49 58.215.66.241 58.215.66.189 202.97.39.9
10.20.0.1 58.214.5.161 58.215.70.49 58.215.66.241 58.215.66.189 202.97.39.9 202.101.63.154
10.20.0.1 58.214.5.161 58.215.70.49 58.215.66.241 58.215.66.189 202.97.39.9 202.101.63.154 202.101.23.102
10.20.0.1 58.214.5.161 58.215.70.49 58.215.66.241 58.215.66.189 202.97.39.9 202.101.63.154 202.101.23.102 202.136.219.33
10.20.0.1 58.214.5.161 58.215.70.49 58.215.66.241 58.215.66.189 202.97.39.9 202.101.63.154 202.101.23.102 202.136.219.33 210.5.159.55
但如果代码改成这样
mtr -r -n 210.5.159.55 |grep "\%" 2>/dev/null | while read line
do
set $line
HOST[$n]=$1
LOSS[$n]=$2
RCVD[$n]=$3
SENT[$n]=$4
BEST[$n]=$5
AVG[$n]=$6
((n=n+1))
done
echo ${HOST[@]}
就什么信息也输出不了.
我想让循环中的变量HOST[$n],LOSS[$n] ,RCVD[$n] ,SENT[$n],BEST[$n],AVG[$n] 循环后不释放.请高手帮下了.
[ 本帖最后由 Iceman_Qi 于 2008-9-4 17:15 编辑 ] |
|