这个可能很简单。我有一个简单的while循环,要求用户输入数据
while [ $i -le $numMasterNodes ]; do
echo "Enter hostname #$i: "
read masterHost$i
((i+=1))
done
我正在尝试在循环中获取$masterHost$i
的值,例如
while [ $i -le $numMasterNodes ]; do
echo "Enter hostname #$i: "
read masterHost$i
echo $masterHost$i
((i+=1))
done
但是,它只返回1 2 3
等等......如何获取$masterHost$i
的值,以便将其添加到数组中?
谢谢!
答案 0 :(得分:2)
你可能会对数组更满意。见http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_10_02.html
请注意,如果您已经了解数组,我不确定您为什么不直接在循环中使用数组。
以下是您重新编写的示例:
#!/bin/bash -
i=1
numMasterNodes=3
declare -a masterHost
while [ $i -le $numMasterNodes ]; do
echo "Enter hostname #$i: "
read masterHost[$i]
echo ECHO ${masterHost[$i]}
((i+=1))
done