Supposons que j'ai une variable var
en bash. Je peux lui attribuer une valeur. Par exemple, je vais en faire une chaîne:
var="Test"
Je veux echo
le nom de var
, pas la valeur détenue par var
. (Je peux faire ce dernier avec echo $var
, mais je veux vraiment faire le premier.)
La réponse à cette question de SO dit d'utiliser echo ${!var}
, mais quand je le fais, je renvoie simplement une ligne vierge. Par exemple, ce script bash
#!/bin/bash
echo "Hi"
var="Test"
echo ${!var}
echo "Bye"
renvoie cette sortie:
Hi
Bye
avec juste une ligne vierge entre Hi et Bye , au lieu de var . Qu'est-ce que je fais mal?
J'utilise bash 4.1.5 (1) sur Ubuntu 10.04.4 .
var=Test; Test=SO; echo ${!var}
echo var
?