Supposons que j'ai une variable varen bash. Je peux lui attribuer une valeur. Par exemple, je vais en faire une chaîne:
var="Test"
Je veux echole 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?