2016-12-06 316 views
0

繼執行時拋出的錯誤是我的msdeploy命令從一個服務器複製到另一個文件(到server2)成功:msdeploy命令從.bat文件

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文件,收到以下錯誤:

enter image description here

下面是我的批處理文件的具體內容:

@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文件中正常工作。

+1

你打算使用單引號「C:\構建\ DIST」? – RGuggisberg

+0

不,雙引號是我所知道的正確方式 – Srini

+1

'CD C:\ Program Files \ IIS \ Microsoft Web Deploy V3'需要圍繞目錄名稱,因爲它包含空格。 – DavidPostill

回答

0

使用cmd /c執行批處理文件正在工作。通常需要使用cmd /c來將控制返回到bat文件,即使有致命的錯誤。不知道只有這個原因的確切原因,因爲在我的情況下沒有致命的錯誤。

檢查這個以瞭解更多信息A .bat File, "Call" or Not to "Call", That is the