Powershell在变量中转义特殊字符

时间:2018-07-05 10:09:49

标签: powershell escaping

我在powershell中有一个变量,其中包含特殊字符(例如“ <”,“>”和双引号),当前我使用的是类似-replace ">" , "^>"的变量, -replace "<" , "^<"-replace '"' , "'",想知道是否有办法在此变量中转义所有特殊字符。

1 个答案:

答案 0 :(得分:2)

将变量包装在花括号中,即

${<My-Variable>with<Special-Characters>} ="<test>"
${<My-Variable>with<Special-Characters>}

返回

<test>

以下摘自StackOverflow上的另一篇文章,但找不到链接

如果它是包含特殊字符的变量,则应该起作用。在@“” @定界符内,变量和子表达式将得到扩展,但是引号和其他特殊字符被视为文字。

$SpecialCharacters = @'
& "C:\Program Files\7-Zip\7z.exe" u -mx5 -tzip -r "$DestFileZip" "$DestFile"
'@

$SpecialCharacters