1

次のコードがあります

let a=1
let b=a

echo $b

bをエコーするとき、その値(「a」)を参照し、a(「1」)の値を表示したい

これは達成できますか?

4

3 に答える 3

2

まず、あなたは本当にこれをしたくないと主張します。しかし、あなたを説得する代わりに、それを行う方法は次のとおりです。

$ let a=1
$ b=a
$ echo $b
a
$ eval "echo \$$b"
1

後で文字列として右側にアクセスする必要があるため、2 番目の割り当てに「let」を使用できないことに注意してください。

于 2012-04-24T16:27:35.700 に答える
1

私はあなたが欲しいと思いますlet b=$a

于 2012-04-24T16:25:42.157 に答える
0

シェルがbashの場合、算術式ではオプションであるため、実際にはb「a」ではなく「1」に設定され$ます(を使用して強制しますlet)。

を使用せずletに、これはあなたが探している構文です(bashを想定):a=1; b=a; echo $b ${!b}出力a 1

于 2012-04-24T16:41:18.483 に答える