/ / Bashの第2レベル変数の値を変更するにはどうすればよいですか? -bash、変数、ポインター

Bashの第2レベルの変数の値を変更するには? -bash、変数、ポインター

bashの2つの変数を次のように考えてみましょう。

X = 8
Y = X

の値を出力したい場合 X 変数を使う Y 私はそれをできた echo ${!Y} そして値 8 印刷されます

問題は、どうすればの値を変更できるかということです。 X 変数を使う Y

回答:

回答№1の場合は7

使用することによって eval

$ X=8
$ Y=X
$ echo ${!Y}
8
$ eval $Y=3
$ echo $X
3

回答№2については2

これはあなたのために働くかもしれません:

X=8; Y=X; echo ${!Y}
8
echo $(($Y=3))
3
echo $X
3
(($Y=7)); echo $X
7

ここにいくつかの方法があります:

let $Y=4; echo $X
4
_[$Y=6]=1; echo $X
6