【发布时间】:2019-05-23 22:56:06
【问题描述】:
我正在尝试以编程方式创建一个服务,其中 binpath 包含包含空格的参数的嵌套引号。
通过命令提示符运行它可以正常工作,但它在使用 Invoke-Expression 的 powershell 中失败。我尝试过使用这里的字符串和脚本块,但仍然无法正常工作。
$serviceName = "my service"
$svcBinaryPath = '\"' + $pathToExe + '\" \"' + $parameterWithSpaces + '\"'
$cmd = "sc.exe create $('"' + $serviceName + '"') binpath= $('"' + $svcBinaryPath + '"')"
Invoke-Command $cmd
打印出$cmd 并运行它在命令提示符中显示的内容可以正常工作。
【问题讨论】:
-
这里根本不需要
Invoke-Command。sc.exe create "$serviceName" binpath= "$svcBinaryPath"应该没问题。
标签: powershell