it-swarm.cn

Powershell中的字面转义字符是什么?

在Powershell中用引号引起来的字符串中包含文字引号时,如何转义引号字符以表示它是文字而不是字符串分隔符?

58
David Alpert

来自help about_quoting_rules

要使双引号出现在字符串中,请将整个字符串用单引号引起来。例如:

'As they say, "live and learn."'

该命令的输出为:

As they say, "live and learn."

您也可以将单引号字符串括在双引号字符串中。例如:

"As they say, 'live and learn.'"

该命令的输出为:

As they say, 'live and learn.'

若要强制Windows PowerShell从字面上解释双引号,请使用反引号字符。这样可以防止Windows PowerShell将引号解释为字符串定界符。例如:

"Use a quotation mark (`") to begin a string."

该命令的输出为:

Use a quotation mark (") to begin a string.

由于单引号字符串的内容是按字面意义解释的,因此您不能使用反引号字符强制对单引号字符串中的文字字符进行解释。

在最新版本的PowerShell中,不支持使用反引号字符将单引号引起来的其他引号引起来。在早期版本的PowerShell中,可以使用反引号转义字符来对单引号引起来的双引号字符进行转义,如在这些版本的PowerShell中提供的help about_quoting文档中所述。

84
Helvick

Powershell中的转义字符是“`”(向后撇号/ Grave)。

这可以用于转义引号和特殊字符(例如,制表符为`t)。

15
Adam Brand

为了补充此处已提供的内容,您还应该知道可以使用引号本身对引号(单引号或双引号)进行转义。这意味着您可以执行以下操作:

“这是“双引号字符串”的示例。”

和这个:

这次是“单引号”。

这种语法提供的优点很简单:两次输入相同的引号比使用引号引起来的引号要容易得多。

10
Poshoholic

单个“文本”,因此将其视为文字文本,然后使用“ \”转义任何特殊字符

例如此字符串:“如他们所说,“生活和学习。””变为此字符串“如他们所说,“生活和学习。””

1
dvdccd