在Python的子进程模块中运行一个程序,其中包含来自Terminal的必需文件

时间:2013-12-04 14:18:29

标签: python subprocess

在Python的子进程模块中运行程序是否可行,但使用来自终端的文件?

所以我想在Python中运行以下程序:

myProgram -a myArg

但是,假设上述程序需要当前目录中的文件myFile,并且它不会将所需文件作为参数。因此,如果您在myFile的目录中运行上述程序,程序将成功处理。但是,如果在非myFile的目录中运行它,则执行失败。

当我尝试在Python的subprocess.Popen()中使用shell=True执行程序时,程序不起作用,看起来它失败的原因是程序无法读取从Python中执行时myFile

那么,有没有办法在Python中成功运行它?

1 个答案:

答案 0 :(得分:0)

subprocess.Popen('myProgram -a myArg', cwd='/folder/with_myFile/')

类似问题:Python specify popen working directory via argument

相关问题