2017-02-23 196 views
0

我想運行從另一個批處理文件,但在這樣做的時候,我有一個問題。第一批執行第二批,它們都在不同的文件夾中。如何運行從另一個批處理文件,但在一個單獨的進程的批處理文件?

但問題是執行的第二批時,看來,它是第一個文件夾,這是不正確,因爲第二批應在文件夾B不在A. 我敢肯定問題是,第一批是運行一切人,所以一切發生,因爲如果它是第一批過程的一部分。

所以,我怎麼能解決這個問題?

檢查輸出:enter image description here

這是我的代碼:

-> batch in folder A: start "" C:\Users\MyUser\Desktop\FOLDER-B\HERE.bat & 

-> batch in folder B: echo WHY AM I STILL IN FOLDER-A ? && pause 
+2

您還沒有指示任何程序做任何類型的變化目錄。工作目錄將是文件夾A,因爲這是父進程設置的目錄。您正在從父進程繼承整個環境。您可能需要閱讀START命令的幫助。我敢打賭,你想使用一個開關。 – Squashman

回答

1

因爲你開始從文件夾-A批次。無論可執行文件的位置如何,它都可以是路徑中的其他可執行文件。如果你想用的起始目錄(無論是可執行文件駐留)到start可執行文件(在這種情況下,一個批處理文件),然後

pushd .....folder-B 
start "" here.bat ... 
popd 

pushd變化所需目錄,所以有那麼沒有必要指定完整的文件路徑。 popd返回到原始目錄。

+1

你也可以添加到你的答案。 '開始「」/ D「C:\文件夾B的路徑」here.bat「 – Squashman

+0

@Squashman:是的,但我沒有想到它...... – Magoo

+0

謝謝你Magoo。這工作得很好。所以這就像去文件夾B並雙擊「here.bat」?或不? – suffuko

相關問題