单引号在双引号内特别意味着什么?

单引号在双引号内特别意味着什么?

来自 bash 手册

将字符括在双引号 ('"') 中会保留引号内所有字符的字面值,但 '$'、'''、'\' 和启用历史扩展时的 '!' 除外。字符 '$' 和 ''' 在双引号内保留其特殊含义(请参见第 3.5 节 [Shell 扩展],第 21 页)。

单引号在双引号内特别意味着什么?

以下示例显示双引号内的单引号按字面意思处理,而不是特殊处理

$ echo "awk -F'[,/]' '{sub(/\/[0-9]*,/, "/" ($2+487) ",") }1' "
awk -F'[,/]' '{sub(/\/[0-9]*,/, / (+487) ,) }1' 

谢谢。

答案1

这应该是一个反勾号。在“4.3.39(1)-release”的在线手册中bash写道:

将字符括在双引号中会保留引号内所有字符的字面值,但 $、`、\ 以及启用历史扩展时的 ! 除外。字符 $ 和 ` 在双引号内保留其特殊含义。

您看到的是该段落的印刷标记存在问题。

相关内容