Я пытаюсь использовать popen для взаимодействия с s sh. Но похоже, что нет способа перенаправить stdoutput
proc = subprocess.Popen(["/usr/bin/ssh","192.168.254.1", "user"], stdout=PIPE, stdin=PIPE, stderr=PIPE, shell=False, bufsize=10000)
out, err = proc.communicate()
Когда я запускаю скрипт, и вывод, и ошибка являются пустыми, а командная строка показывает
user@192.168.254.1's password:
что я делаю не так? Это происходит точно так же, когда я устанавливаю shell = True. Также, прежде чем люди скажут мне использовать pexpect для pxs sh, я попробовал их, и они не будут работать для моего приложения. Я запускаю этот сценарий внутри службы демона, и pexpect принципиально по-разному обрабатывает управляющие коды / управляющие символы T100 и linux, а в некоторых воспроизводимых экземплярах теряет часть потока байтов.
Любая помощь приветствуется. Спасибо