单引号不会进行字符串转换;双引号会进行字符串转换,如变量、反引号(`
)、某些\转移符等等
example:
$echo "$(echo "upg")"
upg
$echo '$(echo "upg")'
$(echo "upg")
bash手册中对单双引号的说明:
包围字符串在单引号(
'
)中,可以确保在单引号中的字符都按原值。一个单引号不可以出现在一对单引号的里面,除非在前面加上反斜杠\
。...包围字符串在双引号(
"
)中,可以确保在双引号中的字符都按原值,除了$
、`
、\
和开启了历史扩展模式。...