Entrada estándar personalizada para subproceso de python
Estoy ejecutando un proceso SSH como este:
sshproc = subprocess.Popen([command], shell=True)
exit = os.waitpid(sshproc.pid, 0)[1]
Esto funciona y abre una terminal interactiva. Basado en la documentación parasubprocess
, sshproc
está usando el guiónsys.stdin
.
La pregunta es: ¿Cómo puedo imprimir en stderr o en un archivo qué entrada se está recibiendo en este proceso secundario? Estoy creando una API de registro, y actualmente pierdo la capacidad de registrar qué comandos se ejecutan en esta sesión SSH.
No necesito la respuesta, solo un empujón en la dirección correcta.
¡Gracias a todos!
EDITAR: Es importante que comience el proceso como se muestra arriba para poder tener una sesión SSH interactiva con mi usuario. P.ej. No puedo usarcommunicate()
por lo que sé.