Entrada padrão personalizada para subprocesso python
Estou executando um processo SSH como este:
sshproc = subprocess.Popen([command], shell=True)
exit = os.waitpid(sshproc.pid, 0)[1]
Isso funciona e abre um terminal interativo. Com base na documentação parasubprocess
, sshproc
está usando o scriptsys.stdin
.
A questão é: como posso imprimir em stderr ou em um arquivo que entrada está sendo recebida para esse processo filho? Estou criando uma API de log e, atualmente, perco a capacidade de registrar quais comandos são executados nesta sessão SSH.
Não preciso da resposta, apenas um empurrão na direção certa.
Obrigado a todos!
EDITAR: É importante iniciar o processo, conforme mostrado acima, para que eu possa ter uma sessão SSH interativa com meu usuário. Por exemplo. Não posso usarcommunicate()
até onde sei.