如何在Bash中更改二级变量的值?

Deb*_*ger 4 variables bash pointers

我们在bash中考虑2个变量如下:

X = 8  
Y = X
Run Code Online (Sandbox Code Playgroud)

如果我想打印X使用Y我可以做的变量echo ${!Y}的值,8将打印该值

现在问题是,如何更改X使用变量的值Y

fge*_*fge 7

使用eval:

$ X=8
$ Y=X
$ echo ${!Y}
8
$ eval $Y=3
$ echo $X
3
Run Code Online (Sandbox Code Playgroud)