eval使用详解(转)

比方你宣告 myname=peter,然後你要查看 myname 變量內容就是使用:
echo $myname
或是
echo ${myname}

若你另外宣告 data=myname。
$ echo $myname
peter

若是希望可以把 data 變量的內容 "myname" 當作一個新變量提供取出 peter 內容的話,一般概念:
${data} --> myname , ${myname} --> peter

所以語法上要查看內容一般可能會使用:
echo $${data}

只是這樣語法是錯誤的,因為無法取出 ${data} 內容後再當作變量取值。
$ echo $${data}
14054{data}

那可能想到方式是這樣使用:
echo $${data}

但是這變成結果如下:
$ echo $${data}
$myname

那怎麼把 $myname 展開執行呢 ? 那就是使用 eval 來解決該問題:
eval echo $${data}
peter
[@more@]
请使用浏览器的分享功能分享到微信等