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