Python linux shell

时间:2015-04-04 22:57:35

标签: python linux terminal

在我的程序中,我想使用不同的进程访问多个linux shell。

目前我正在使用子流程我目前还没有linux机器对此进行测试,所以你能告诉我这是否有效。

子进程是否在一个终端上运行?如果有,还有其他选择吗?

这就像我正在开发的那样:

import multiprocessing
import subprocess

def doSomething(filepath):
    subprocess.call("somecommands")
    subprocess.call("somecommands")

if __name__ == "__main__":

while True:
    processList=[]
    for i in range(numberOfThreads):
        process=multiprocessing.Process(target=doSomething,args=[files])
        process.start()
        processList.append(process)
    for process in processList:
        process.join()

1 个答案:

答案 0 :(得分:2)

你应该使用,

  

POPEN

子进程模块的功能,这样,我认为你不再需要线程,因为它看起来不像是在一个认真分享数据的地方。

现在你的代码看起来像,

import subprocess as s_p
s_p.Popen('Command to be given','*args')
print 'Process started in a separate shell'

我相信这会完成你的工作!