从多进程重定向输出?

时间:2019-07-08 17:02:12

标签: python windows multiprocessing

我无法记录称为多处理模块中发生的所有事情。

脚本:mainScript.py

import multiprocessing
python_file = A different python file
def main():
    module = __import__(python_file)
    p = multiprocessing.Process(target=getattr(module, 'main'), args=())
    p.start()
    step_timeout = 20
    p.join(step_timeout)

脚本:一个不同的python文件

import os
def main():
    print('I am a different python script')
    os.system('dir').read()
    os.system("call C:\\test.bat")
    return

我无法记录被调用的批处理文件的输出以及os.system(command).read()的结果。

我知道您可以记录通过python脚本运行的所有操作,诸如此类...

python mainScript.py >> logFile.txt

是否可以对多处理输出执行类似的操作?

p = multiprocessing.Process(target=getattr(module, 'main'), args=()) >> logFile.txt

如果是,它还会捕获批处理脚本的输出吗?

是否可以将我调用的流程中打印的所有内容重定向到主流程?

0 个答案:

没有答案