У меня проблемы с регистрацией всего, что происходит в вызываемом мультипроцессорном модуле.
Сценарий: 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
Если так, будет ли он также захватывать выходные данные пакетных сценариев?
Можно ли перенаправить все, что напечатано в моем вызываемом процессе, на основной процесс?