Załóżmy, że mam zmienną varw bash. Mogę przypisać mu wartość. Na przykład zrobię z tego ciąg:
var="Test"
Chcę echonazwy var, a nie wartości posiadanej przez var. (Mogę zrobić to drugie echo $var, ale tak naprawdę chcę zrobić to pierwsze.)
Odpowiedź na to pytanie z SO mówi, aby użyć echo ${!var}, ale kiedy to zrobię, echo po prostu zwraca pustą linię. Na przykład ten skrypt bash
#!/bin/bash
echo "Hi"
var="Test"
echo ${!var}
echo "Bye"
zwraca ten wynik:
Hi
Bye
z pustą linią między Cześć a Cześć , zamiast var . Co ja robię źle?
Korzystam z wersji bash 4.1.5 (1) na Ubuntu 10.04.4 .
var=Test; Test=SO; echo ${!var}
echo var?