Использование подпроцесса для регистрации операторов печати команды - PullRequest
1 голос
/ 15 февраля 2012

Я запускаю команду Transporter, которая печатает журнал того, что происходит с подсказкой.

Как мне перенаправить все операторы печати в отдельный файл с именем transporter_log.txt в той же папке, из которой выполняется скрипт? Что-то вроде -

log_file = open(PATH, 'w')
subprocess.call(shlex.split("/usr/local//iTMSTransporter -m verify...")
log_file.write(...)

Ответы [ 2 ]

3 голосов
/ 15 февраля 2012

Вы можете указать файл как stdout параметр:

with open(PATH, 'wb') as log_file:
    subprocess.check_call(cmd, stdout=log_file)

Вывод cmd записывается в log_file.

0 голосов
/ 15 февраля 2012

Как насчет использования команды перенаправления (в Unix)?

your_python.py > /path/to/transporter_log.txt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...