DETACHTTY(1) | General Commands Manual | DETACHTTY(1) |
detachtty, attachtty - run an interactive program with io to a unix-domain socket
detachtty [--no-detach]
[--dribble-file dribblename]
[--log-file name]
[--pid-file pidname] socket-path command
[arguments-to-command]...
attachtty socket-path [command] [timeout]
attachtty username@host:socket-path [command]
detachtty lets you run interactive programs non-interactively, and connect to them (optionally over the network) when you do need to interact with them. command is run on a pseudo-terminal, and data is copied between it and a unix(7)-domain socket named socket-path. command runs with the current user's permissions and environment variables.
attachtty is used to connect to a process running under detachtty. It copies between socket-path and stdin/out. It also catches SIGINT and arranges for it to be forwarded to the command, so the user may use Control-C in the usual fashion.
If you've used screen, it's a similar concept. Compared to screen, detachtty has
* no capability to swap between different screens (it doesn't co-opt C-a)
* no tty emulation (you can sanely use it in emacs comint modes)
* no features (less to go wrong)
* no configuration file
* ability to spawn ssh to securely connect across the network
These programs approximately follow the usual GNU command line syntax, using long options that start with two dashes (`--').
For detachtty, the options are:
For attachtty, the options are instead:
To detach from the tty without exiting from the server process, send attachtty any signal that it doesn't catch. See the SIGNALS section.
detachtty does not search the user's PATH environment variable for the program to execute, so a full pathname must be provided.
If you get an immediate "Child terminated, exiting" message from detachtty, this usually means that the program you specified was not found or could not be executed (on Linux 2.4, execve(1) succeeds even if it didn't, so to speak).
You will probably go insane a lot more slowly if you use absolute pathnames for all filename arguments.
Sending SIGHUP to the process identified by pidname will cause detachtty to close and reopen its log files.
Sending SIGTSTP to an attachtty process (usually from the keyboard with ^Z) will cause it to stop itelf, leaving the server process running. It can be resumed normally with the shell builtin command "fg".
Sending SIGQUIT to an attachtty process (usually from the keyboard with ^\) will cause it to detach from the tty and quit, leaving the server process running. Sometimes you need to press it twice.
screen(1), ssh(1), sbcl(1).
Written by Daniel Barlow <dan@telent.net>, and a cast of units. Modified by Luca Capello <luca@pca.it>. Modified by Mark Huetsch <markhuetsch@gmail.com>. Modified by Massimiliano Ghilardi <massimiliano.ghilardi@gmail.com>.
March 18, 2006 |