pty handler program
I'd like to propose the following program, which I might write if nothing like this already exists. It would be similar to the "script" program in that it will allocate a new pty/tty pair and start a new session. But unlike the "script" program, it will provide a means to have BOTH the normal terminal session going AND a script or input source to provide input. It could be used, for example, to pre-start programs inside the pty session, and at the end, let the controlling tty it was started in fully interact with it (something that can't happen if it was started with input piped from the script).
My design would allow running a control script right from the beginning, or at any later time. The control script can see output from the session, filter that output for the controlling tty to see, provide input, maybe even filter the controlling tty input, too. When the script ends, the session can remain for regular interaction. Also, an environment variable will be set in the session to allow programs inside the session to provide similar controls, such as feeding input. That environment variable might be a local port number to connect to, with an access key or encryption key, to provide input and/or control commands.
I have several uses for this. Many of those uses could be done using other tools, but not all the uses would hit the same tools. But by doing it all in a program like this, I see a great many of my uses all solved in a single project, even if it isn't the most elegant (but I see solving many problems with one solution as being its own kind of elegant).
Thoughts? Know of such a program? Want to write it? Want me to?
|