subprocess.Popen和os.system的不同行为

时间:2013-11-15 14:16:53

标签: python python-3.x tortoisesvn

我在Python 3.3中遇到了subprocess.Popen和os.system的不同行为

当我在命令提示符下运行时

TortoiseProc.exe /command:update /path:"c:\projects\my_project" /closeonend:0

TortioseSVN尝试更新我的文件夹。当我尝试从python进行这样的系统调用时:

import subprocess
subprocess.call(["TortoiseProc.exe", "/command:update", '/path:"C:\projects\my_project"', '/closeonend:0'])

import subprocess
subprocess.Popen(["TortoiseProc.exe", "/command:update", '/path:"C:\projects\my_project"', '/closeonend:0'])

TortoiseProc.exe被称为ok,但它没有更新文件夹 - 它显示它被跳过。

当我使用os.system时 - 一切正常,TortoiseProc.exe正在更新我的文件夹,但也出现了控制台窗口。

os.system('TortoiseProc.exe /command:update /path:"C:\projects\my_project" /closeonend:0')

那么如何让TortoiseProc.exe通过子进程工作呢?我如何在没有控制台窗口的情况下调用os.system?

0 个答案:

没有答案