当在PowerShell中引用的string中包含文字引号字符时,如何将引号字符转义以指示它是字面值而不是string分隔符?
从help about_quoting_rules
要使双引号出现在string中,请将整个string括在单引号中。 例如:
'As they say, "live and learn."'
该命令的输出是:
As they say, "live and learn."
您也可以将单引号string括在双引号string中。 例如:
"As they say, 'live and learn.'"
该命令的输出是:
As they say, 'live and learn.'
要强制Windows PowerShell从字面上解释双引号,请使用反引号字符。 这可以防止Windows PowerShell将引号解释为string分隔符。 例如:
"Use a quotation mark (`") to begin a string."
该命令的输出是:
Use a quotation mark (") to begin a string.
由于单引号string的内容是按字面解释的,所以不能使用反引号字符来强制单引号string中的文字字符解释。
在最新版本的PowerShell中不支持使用反引号字符来转义单引号string中的其他引号。 在PowerShell的早期版本中,可以使用反引号转义字符来转义单引号string中的双引号字符,详细信息help about_quoting
这些版本的PowerShell中可用的help about_quoting
文档。
Powershell中的转义字符是“`”(向后的撇号/坟墓)。
这可以用来转义引号和特殊字符(例如,标签是`t)。
为了恭维已经在这里提供了什么,你也应该知道,你可以逃避报价(单或双)报价本身。 这意味着你可以这样做:
“这是一个双引号string”“的例子。
和这个:
这次是'单引号''。
这个语法提供的优点很简单:键入相同的引号比使用反引号来引用引号更容易。