2012-11-17 86 views
5

至少在bash模式中,經常使用以下引號替換:$' '例如,${arr[@]/%/$'\n\n\n'}在每個數組「arr」項後打印三個換行符。那些是特殊的引號嗎?他們怎麼叫?除了bash模式替換之外,他們還在哪裏使用?形式$'string'

回答

10

ANSI-C Quoting

詞被特殊處理。該字擴展爲字符串,反斜槓轉義字符被替換爲ANSI C標準指定的字符。


例如:

$'hello\nworld' 

你會得到11字符在中間換行符


echo -e 'hello\nworld' 
echo $'hello\nworld' 

他們給你相同的結果。