我有一個使用'eval'命令的bash腳本。 我不知道這是否是一個好主意,但我需要這樣做:Bash eval和動態調用變量
i=1
for e in $items; do
echo $i - $e
eval vm_$i=$e
let i++
done
然後我像這樣顯示菜單:
while [ "$c" != "q" ]; do
read c
case $c in
1)
echo "CB Node $vm_1"
ssh "$vm_1" "couchbase-cli server-info -c $cluster"
;;
2)
;;
3)
;;
l) echo "Listing cluster nodes... "
;;
q) exit 2
esac
做
它的工作原理,但現在我想在我的'case'中使用變量$ c來生成好的變量$ vm1($ vm_ $ c,$ c對應於$ i其實..)。 我嘗試了一些東西,例如:echo「CB Node $(eval $ vm $ c)」,但它不起作用。
你可以使用數組嗎? '節點[I] = $È; echo $ {node [i]}' – choroba 2015-03-25 10:14:37