2014-01-30 189 views
0

我創建了批處理(batA)文件,該文件啓動另一批處理(marathon.bat)文件。當我將batA保存到我的桌面上並使用批處理文件沒有啓動另一個批處理文件

start /wait ..\marathon\marathon.bat -batch "C:\stuff" 

它工作得很好。然而,當我保存marathon.bat我的程序文件,現在有在名稱空間,然後用

start /wait c:\"Program Files (x86)\marathon\marathon.bat" -batch "c:\stuff" 

我得到的錯誤:

'c:\Program' is not recognized as an internal or external command, operable program or batch file. 

我知道,你必須使用雙引號,以便將空格考慮在內,但爲什麼它在c:\ Program中停止?我嘗試將引號移到不同的位置,但似乎無法識別第二個文件。

+0

should'c:\「P ..」'not be'「c:\ P ..」'? –

+0

我已經試過了,它沒有工作。我會再試一次。 –

回答

0

這是否適合你?

start "" /wait %comspec% /c "c:\Program Files (x86)\marathon\marathon.bat" -batch "c:\stuff" 
+0

這個伎倆。謝謝 –

0

如何調用批處理文件有2個問題。

首先,您已將您的報價放在錯誤的地方。取而代之的

start /wait c:\"Program Files (x86)\marathon\marathon.bat" 

你應該用引號引起你的整個命令,不僅從Program Files文件夾名稱:

start /wait "c:\Program Files (x86)\marathon\marathon.bat" 

的第二個問題是,與指定的START命令引號中的第一個參數是處理作爲新窗口的標題。你應該在你的命令前添加一組空引號來規避這種情況:

start "" /wait "c:\Program Files (x86)\marathon\marathon.bat" 
+0

我把雙引號放在那裏,因爲之前在批處理文件中是我必須啓動vbscript的方式。 'c:\「文件路徑的其餘部分」'工作,''c:\文件路徑的其餘部分''不起作用。另外,在啓動命令之後添加兩組雙引號對我來說沒有任何影響。我仍然得到同樣的錯誤。 –

+0

@NickL你是否用空引號試過該部分?這是否解決了您的問題? – Laf

+0

當你說空引號時,我假定你的意思是在啓動命令之後(啓動「」)。是的,我已經嘗試過了,它不起作用。我不知道你的意思是「」還是「」(第一個沒有空格,第二個沒有空格)。我已經嘗試過兩種都沒有工作。 –

相關問題