批处理文件中的PowerShell命令,其中命令中需要双引号
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批处理文件中的PowerShell命令,其中命令中需要双引号相关的知识,希望对你有一定的参考价值。
我尝试在批处理文件中调用PowerShell命令:
powershell -Command "(gc test.txt ) -replace ("~[","`r`n[") | sc test.txt"
但它始终失败并出现此错误:
At line:1 char:29
+ (gc test.txt ) -replace (~[,`r`n[) | sc test.txt
+ ~
Missing argument in parameter list.
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordEx
ception
+ FullyQualifiedErrorId : MissingArgument
我尝试使用单引号替换字符串:
powershell -Command "(gc test.txt ) -replace ('~[','`r`n[') | sc test.txt"
但是,当它出现在用单引号括起来的字符串中时,反引号转义符将被视为任何其他文本字符。
答案
只需使用反斜杠转义双引号:
powershell -Command "(gc test.txt ) -replace ("~[","`r`n[") | sc test.txt"
以上是关于批处理文件中的PowerShell命令,其中命令中需要双引号的主要内容,如果未能解决你的问题,请参考以下文章