2013-10-25 101 views
0

在bash的最快方式,有(至少)四種方式輸出變量:慶典:爲呼應變量

VAR=data 

    echo "VAR:" $VAR 
    echo "VAR:" ${VAR} 
    echo "VAR: $VAR" 
    echo "VAR: ${VAR}" 

哪種方法最好(或最佳做法)?或者哪個方法可以被bash shell解析/執行得最快?

+1

爲什麼不看看[源代碼](http://ftp.gnu.org/gnu/bash/)? – devnull

+2

@devnull:因爲源代碼告訴你「如何」,但既不是「什麼」,也不是「爲什麼」。你必須推斷它,然後希望下一個版本不會使你的扣除無效。 – DevSolar

+3

不要擔心性能,但請閱讀變量引用:http://mywiki.wooledge.org/BashPitfalls – bos

回答

1

我不認爲有很大的性能差異,特別是當與實際I/O的開銷相比時。

+0

至於最佳做法,這是意見,因此我將它添加爲評論,而不是將其作爲答案的一部分。我認爲''VAR:$ {VAR}「'是最好的變體,因爲它在語法和意圖上是精確的。 (考慮在$ {VAR}後面打印的下一個字符是否是下劃線:在這種情況下,您需要* {}},因此習慣使用它。) – DevSolar

0
他們

沒有推薦:

printf "VAR: %s\n" "$VAR" 

如何echo作品可以從外殼有所不同外殼,而printf更規範一點。