Я пытаюсь зарегистрировать свой вывод на python, используя команду bash "script". Причина, по которой я это делаю, заключается в том, что есть часть информации, которая мне нужна из программы, которую я запускаю. Но это не тип, который был только что напечатан в консоли. Мне нужна эта информация, но нет способа извлечь эту информацию, кроме как вручную скопировать и вставить ее в мой выходной файл.
Так что я подумал, что могу использовать «script» в bash для записи всего содержимого консоли в текстовый файл, и оттуда я вроде как обманул и преобразовал этот вывод Nonetype в консоли в текстовый файл. Но сейчас я пытаюсь сделать этот процесс автоматическим. Поэтому я начал тестировать эту идею и столкнулся с этой проблемой: когда сценарий достигает строки для вызова команды «script», он порождает новую оболочку, поэтому он не может получить доступ к остальной части кода.
Ниже приведен фрагмент кода для тестирования.
from subprocess import call
call(['script', 'test.txt']) # call script in the bash shell
print('Hello World') # using python to print hello world
call(['exit']) # logout the shell
Мне интересно, есть ли способ, который может вызвать команду "script" и вернуться к остальной части скрипта?