我想创建一个简单的bash脚本,它会要求用户输入,然后根据他们选择的数字在声明中回显值。Bash脚本声明
declare -A bla
bla[1]="bla1"
bla[2]="bla2"
echo "What bla would you like?"
echo ""
echo "1) bla1"
echo "2) bla2"
read answer
echo "bla[$answer]"
当我运行此脚本,我期待的输出可以是“BLA1”或“bla2”这取决于他们是否输入1或2。虽然我只得到了输出中:“BLA [1]”或“ BLA [2]
我在做什么错在这里
'bla [$ answer]'是一个内部有可变扩展的字符串('$ answer')。你需要一个数组扩展。 (例如'$ {bla [$ answer]}')。 –
我刚刚尝试过,输出结果是“./bla.sh:Bad substitution” – user2271571
您使用的是什么外壳?这真的是bash吗?你输入了我写的内容吗?你可以在脚本的顶部添加'set -vx'并显示输出吗? –