2013-05-21 50 views
4

我最近讀了一些bash代碼echo $"asdf"$是什麼?Bash中的雙引號之前的美元字符

$"asdf""asdf"之間的區別是什麼?

+1

可能重複[什麼是特殊美元符號shell變量?](https://stackoverflow.com/questions/5163144/what-are-the-special-dollar-sign-shell-variables)和[在腳本中有$「美元符號前綴的字符串」是什麼意思?](https://unix.stackexchange.com/questions/48106/what-does-it-mean-to-have-a-dollarsign- prefixed-string-in-a-script) –

回答

10

bash manual記載,它是用於本地化:

由美元符號(「$」)開頭甲雙引號字符串將導致 字符串根據當前區域被翻譯。如果 當前區域設置爲C或POSIX,則忽略美元符號。如果翻譯並替換 字符串,則替換爲雙引號。

+1

你能否舉一個例子來證明這實際上對結果有影響嗎? – Alfe

+1

哇我剛剛學到了一些新的東西,這是一個美好的一天(+1):) – ant

+2

查看http://mywiki.wooledge.org/BashFAQ/098查看完整的示例。 – dogbane