2014-02-19 49 views
1

我正在使用python 3.3,在我的代碼中,我需要用下面的參數打開cmd.exe並運行它。輸入cmd.exe所需的行應該是:如何用Python中的cmd.exe打開程序?

C:\Program Files (x86)\GlobalMapper15>global_mapper.exe script.gms variable 

我看到了不同的答案,但我subprocess.call管理的最多的是開或者CMD.EXE,或global_mapper.exe。我沒有設法獲得cmd.exe中的上述行。

我試過到目前爲止:

#import subprocess 
import os 
os.system("cmd.exe C:\Program Files (x86)\GlobalMapper15\global_mapper.exe script.gms") 
#subprocess.call(["cmd.exe C:\Program Files (x86)\GlobalMapper15\global_mapper.exe", "script.gms"]) 

兩個人都沒有行之有效。

當然,如果該行也會被執行,那將會很好。任何人都可以幫助我做到這一點?

謝謝大家,

+0

_「我使用subprocess.call管理的最多的是打開cmd.exe或global_mapper.exe。」_我希望看到這段代碼。 進口子 subprocess.call([ 「CMD.EXE」]) 這將打開cmd.exe的: – Kevin

+0

@Kevin 好,你甚至可以作爲運行一些簡單測試。這還不夠,但我仍然需要在行上添加所有額外的參數。 – Robert

+0

也許這可以幫助你。 http://stackoverflow.com/questions/89228/calling-an-external-command-in-python –

回答

1

要在指定目錄下運行global_mapper.exe

#!/usr/bin/env python 
from subprocess import call 

dir = r"C:\Program Files (x86)\GlobalMapper15" 
cmdline = "global_mapper.exe script.gms variable" 
rc = call(cmdline, cwd=dir) # run `cmdline` in `dir` 

如果你想在一個新的控制檯窗口來啓動命令:

rc = call("start cmd /K " + cmdline, cwd=dir, shell=True) 
+0

非常感謝您的澄清。我現在明白它是如何工作的。 Geez編程可以真正加快速度。 感謝大家, – Robert

1
這個

可能:

import os 
os.system("program.exe -parameter") 
相關問題