| Launch a subprocess in a pseudo terminal (pty), and interact with both the |
| process and its pty. |
| |
| Sometimes, piping stdin and stdout is not enough. There might be a password |
| prompt that doesn't read from stdin, output that changes when it's going to a |
| pipe rather than a terminal, or curses-style interfaces that rely on a terminal. |
| If you need to automate these things, running the process in a pseudo terminal |
| (pty) is the answer. |
| |
| Interface:: |
| |
| p = PtyProcessUnicode.spawn(['python']) |
| p.read(20) |
| p.write('6+6\n') |
| p.read(20) |