Shell Quoting
一共有三种转义字符,它们实际上也可以看作是shell中的meta:
‘’(单引号):
又叫hard quote,其内部所有的shell meta都会被关掉。注意,hard quote中不允许出现’(单引号)。
“”(双引号):
又叫soft quote,其内部只允许出现特定的shell meta:
$ 用于参数代换
` 反引号,用于命令代换
\$ 实现美元标志
\’ 实现反引号的文本化(去除反引号的特殊意义)
\” 实现双引号的文本化(去除双引号的特殊意义)
\\ 实现反斜杠的文本化(去除反斜杠的特殊意义)
注意,在soft quote中单引号没有特殊意义,就是文本。
\(反斜杠):
又叫escape,去除其后紧跟的meta或wildcard的特殊意义。
实际上quote的使用就是为了跳过shell对特殊字符的处理。
一共有三种转义字符,它们实际上也可以看作是shell中的meta:
‘’(单引号):
又叫hard quote,其内部所有的shell meta都会被关掉。注意,hard quote中不允许出现’(单引号)。
“”(双引号):
又叫soft quote,其内部只允许出现特定的shell meta:
$ 用于参数代换
` 反引号,用于命令代换
\$ 实现美元标志
\’ 实现反引号的文本化(去除反引号的特殊意义)
\” 实现双引号的文本化(去除双引号的特殊意义)
\\ 实现反斜杠的文本化(去除反斜杠的特殊意义)
注意,在soft quote中单引号没有特殊意义,就是文本。
\(反斜杠):
又叫escape,去除其后紧跟的meta或wildcard的特殊意义。
实际上quote的使用就是为了跳过shell对特殊字符的处理。