Giả sử rằng tôi có một biến var
trong bash. Tôi có thể gán một giá trị cho nó. Ví dụ, tôi sẽ biến nó thành một chuỗi:
var="Test"
Tôi muốn echo
tên của var
, không phải giá trị nắm giữ var
. (Tôi có thể làm cái sau với echo $var
, nhưng tôi thực sự muốn làm cái trước.)
Câu trả lời cho câu hỏi này từ SO nói là sử dụng echo ${!var}
, nhưng khi tôi làm điều đó, tôi chỉ trả về một dòng trống. Ví dụ: tập lệnh bash này
#!/bin/bash
echo "Hi"
var="Test"
echo ${!var}
echo "Bye"
trả về đầu ra này:
Hi
Bye
chỉ với một dòng trống giữa Hi và Bye , thay vì var . Tôi đang làm gì sai?
Tôi đang chạy bash 4.1.5 (1) trên Ubuntu 10.04.4 .
var=Test; Test=SO; echo ${!var}
echo var
?