在bash的最快方式,有(至少)四種方式輸出變量:慶典:爲呼應變量
VAR=data
echo "VAR:" $VAR
echo "VAR:" ${VAR}
echo "VAR: $VAR"
echo "VAR: ${VAR}"
哪種方法最好(或最佳做法)?或者哪個方法可以被bash shell解析/執行得最快?
在bash的最快方式,有(至少)四種方式輸出變量:慶典:爲呼應變量
VAR=data
echo "VAR:" $VAR
echo "VAR:" ${VAR}
echo "VAR: $VAR"
echo "VAR: ${VAR}"
哪種方法最好(或最佳做法)?或者哪個方法可以被bash shell解析/執行得最快?
我不認爲有很大的性能差異,特別是當與實際I/O的開銷相比時。
至於最佳做法,這是意見,因此我將它添加爲評論,而不是將其作爲答案的一部分。我認爲''VAR:$ {VAR}「'是最好的變體,因爲它在語法和意圖上是精確的。 (考慮在$ {VAR}後面打印的下一個字符是否是下劃線:在這種情況下,您需要* {}},因此習慣使用它。) – DevSolar
沒有推薦:
printf "VAR: %s\n" "$VAR"
如何echo
作品可以從外殼有所不同外殼,而printf
更規範一點。
爲什麼不看看[源代碼](http://ftp.gnu.org/gnu/bash/)? – devnull
@devnull:因爲源代碼告訴你「如何」,但既不是「什麼」,也不是「爲什麼」。你必須推斷它,然後希望下一個版本不會使你的扣除無效。 – DevSolar
不要擔心性能,但請閱讀變量引用:http://mywiki.wooledge.org/BashPitfalls – bos