Consideriamo 2 variabili in bash come segue:
X = 8
Y = X
Se voglio stampare il valore di X
usando la variabile Y
Potrei fare echo ${!Y}
e il valore 8
sarà stampato
Ora la domanda è: come posso cambiare il valore di X
usando la variabile Y
?
risposte:
7 per risposta № 1Usando eval
:
$ X=8
$ Y=X
$ echo ${!Y}
8
$ eval $Y=3
$ echo $X
3
2 per risposta № 2
Questo potrebbe funzionare per te:
X=8; Y=X; echo ${!Y}
8
echo $(($Y=3))
3
echo $X
3
(($Y=7)); echo $X
7
Ecco un altro paio di modi:
let $Y=4; echo $X
4
_[$Y=6]=1; echo $X
6