Команда записи файла в pexpect не ведет себя так, как я думал, это будет

Существует процесс, который я могу запустить из командной строки, которая непрерывно записывает данные в файл, пока я не остановлю его, и к нему можно получить доступ (читать) во время процесса.

Однако, если я запускаю ту же команду через pexpect, файл остается пустым (хотя может быть прочитан), пока я не остановлю экземпляр pexpect. Только после этого файл будет заполнен данными.

Это просто особенность pexpect, или я делаю что-то неправильно здесь?

Команда pexpect:

child = pexpect.spawn('airodump-ng', ['-a', '-w', '/root/Desktop/TEST', '--output-format', 'csv', INTERFACE]) 

Я никогда не использовал airodump-ng ; если это огонь и забыть упражнение (без взаимодействия), вы должны использовать pexpect.run() для неинтерактивных задач, таких как ls -la

 results = pexpect.run('ls -la') 

Если вам нужно взаимодействие, просто поместите свои аргументы в одну строку …

 child = pexpect.spawn('airodump-ng -a -w /root/Desktop/TEST --output-format csv %s' % INTERFACE)