我有一个数组
FIRST_ARRAY=(NEWYORK CALIFORNIA TEXAS)
一个可以接受州名作为输入的脚本,会返回该州内所有城市的信息。
例如,以下输入将返回:
user@localhost:~$ search NEWYORK cities
newyorkcity
buffalo
albany
user@localhost:~$ search CALIFORNIA cities
sanfrancisco
paloalto
losangeles
user@localhost:~$ search TEXAS cities
houston
dallas
austin
我希望能够遍历FIRST_ARRAY
for state in ${FIRST_ARRAY[@]}
do
cities=`search ${FIRST_ARRAY[state]} cities`
ARRAY_$state=($cities}
done
在最后,我希望以下数组已被创建,并且它们包含以下值。
ARRAY_NEWYORK=(newyorkcity buffalo albany)
ARRAY_CALIFORNIA=(sanfrancisco paloalto losangeles)
ARRAY_TEXAS=(houston dallas austin)
如果这样可以运行,例如,我想通过以下方式调用动态创建的数组来访问 austin。
echo ${ARRAY_TEXAS[2]}
谢谢!
${FIRST_ARRAY[state]}
在所有情况下都会将state
数值化(为0
),因此总是引用 NEWYORK? - Charles Duffy