为什么此 PowerShell 脚本无法正确执行此外部命令?

2024-05-15

以下代码将输出我希望运行的命令字符串:

[string] $SourceRepo="C:\inetpub\wwwroot\Spyda\"
[string] $Repo="C:\inetpub\wwwroot\BranchClone\"
[string] $revstring="--rev `"default`" --rev `"case 1234`""

Write-Output "hg clone $SourceRepo $Repo $revstring"

这使

hg clone C:\inetpub\wwwroot\Spyda\ C:\inetpub\wwwroot\BranchClone\ --rev "default" --rev "case 1234"

如果我从 powershell 提示符运行它,它会起作用,如果我尝试使用此语法从脚本运行 hg clone 命令,它会失败:

hg clone $SourceRepo $Repo $revstring

给出的错误:

hg.exe : hg clone: option --rev default --rev case not recognized
At line:6 char:3
+ hg <<<<  clone $SourceRepo $Repo $revstring
    + CategoryInfo          : NotSpecified: (hg clone: optio... not recognized:String) [], RemoteE 
   xception
    + FullyQualifiedErrorId : NativeCommandError

尝试调用表达式

$SourceRepo="C:\inetpub\wwwroot\Spyda\"
$Repo="C:\inetpub\wwwroot\BranchClone\"
$revstring="--rev `"default`" --rev `"case 1234`""

$cmdString = "hg clone $SourceRepo $Repo $revstring"

Invoke-Expression $cmdString
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么此 PowerShell 脚本无法正确执行此外部命令? 的相关文章

随机推荐