2014-10-29 201 views
0

我很熟悉批處理。超輕的知識。無論如何,我有這個程序運行在命令行模式(它恰好呈現我的世界地圖)。 它通常用於打開cmd,並輸入mapcrafter.exe -c config.config -j 8運行exe,指定配置文件,並運行帶有8個線程的作業。如何將批處理文件中的命令發送到命令行.exe?

我想要做的一件事就是將所有這些都放在一個批處理文件中,所以我不必在每次重新渲染時都輸入所有內容。它看起來像:

start cmd.exe /K mapcrafter.exe --config "config.config" --jobs 8

這偉大的工作,當批處理文件是在同一目錄下的EXE。 不管怎麼說,我不知道該怎麼做的是:

  1. 啓動命令提示符
  2. 更改目錄(CD),以包含.exe
  3. 運行與兩個.exe文件(文件夾-c -j)參數

我想在一個批處理文件中完成所有這一切,並且我希望它保持打開命令提示符窗口,因爲.exe會輸出錯誤和完成百分比。

我很幸運,憑藉對批次的有限瞭解,我能夠獲得單行批處理文件的工作。在這一點上,我不知道應該如何處理這個問題。提前感謝您提供的任何幫助!

回答

1

你爲什麼不只是創建一個批處理文件

mapcrafter.exe --config "config.config" --jobs 8 

的原因時,它不是在同一目錄下,是因爲你的路徑變量沒有mapcrafter的位置,這是行不通的。一個簡單的方法各地是,如果你想了解更多有關配置使用完整路徑類似

D:\MineCraft\mapcrafter.exe --config "config.config" --jobs 8 

PATH環境變量看 Adding directory to PATH Environment Variable in Windows

+2

如果你不想編輯系統路徑變量,你也可以在你的批處理文件中寫入'set path =%path%; D:\ MineCraft'。這會將該目錄添加到僅用於批處理文件上下文的路徑(以及由其生成的進程)中。 – 2014-10-29 04:25:41

+0

當我做'D:\ MineCraft \ mapcrafter.exe --config「config.config」--jobs 8'我得到一個閃爍的控制檯窗口 'D:\ MineCraft \ Renders \ Specific作業文件夾> D: \ Minecraft \ mapcrafter.exe --config「config.config」--jobs 8 「D:\ Minecraft」不被識別爲內部或外部命令,可操作程序或批處理文件「 – Dirttraxx 2014-10-29 22:22:32

+0

」命令提示符。它扼殺配置文件的路徑。當我在'-c'或'--config'參數後面輸入''D:\ MineCraft \ Renders \ Specific作業文件夾\ config.config''時,我得到了反饋'<「D:\ MineCraft \渲染\特定作業文件夾\ config.config「>對參數'-c'或'--config'無效 – Dirttraxx 2014-10-29 22:57:06