从 .bat 文件执行时 msdeploy 命令抛出错误

msdeploy command throwing error when executed from .bat file

以下是我的 msdeploy 成功将文件从一台服务器复制到另一台服务器(server1server2)的命令:

MSDeploy.exe -source:contentPath="C:\inetpub\wwwroot\dist",computerName="https://server1:8172/MSDeploy.axd",username="administrator",password="XXXXXXXXX",authtype="Basic" -allowUntrusted -dest:contentPath='C:\Builds\dist',computerName="https://server2:8172/MSDeploy.axd",username="administrator",password="XXXXXXXXXX",authtype="Basic",includeAcls="False" -verb:sync -allowUntrusted

我还有一个与上述完全相同的命令,可以在 server3server4 之间传输文件,并且可以在命令提示符下成功运行。而当我将这些命令之一或两者放入 .bat 文件时,出现以下错误:

下面是我的批处理文件的具体内容:

@ECHO OFF

CD C:\Program Files\IIS\Microsoft Web Deploy V3

MSDeploy.exe -source:contentPath="C:\inetpub\wwwroot\dist",computerName="https://server1:8172/MSDeploy.axd",username="administrator",password="XXXXXXXXX",authtype="Basic" -allowUntrusted -dest:contentPath='C:\Builds\dist',computerName="https://server2:8172/MSDeploy.axd",username="administrator",password="XXXXXXXXXX",authtype="Basic",includeAcls="False" -verb:sync -allowUntrusted

MSDeploy.exe -source:contentPath="C:\inetpub\wwwroot\dist",computerName="https://server3:8172/MSDeploy.axd",username="administrator",password="XXXXXXXXX",authtype="Basic" -allowUntrusted -dest:contentPath='C:\Builds\dist',computerName="https://server4:8172/MSDeploy.axd",username="administrator",password="XXXXXXXXXX",authtype="Basic",includeAcls="False" -verb:sync -allowUntrusted

我试过 运行 作为管理员,仍然是同样的问题。令我惊讶的是,与其他一些服务器完全相同的命令在 .bat 文件中也能正常工作。

正在使用 cmd /c 执行批处理文件。通常需要使用cmd /c来return控制bat文件,即使有致命错误。不知道只有这个有效的确切原因,因为在我的案例中没有致命错误。

查看此以获取更多信息A .bat File, "Call" or Not to "Call", That is the