dtach(1) | General Commands Manual | dtach(1) |
dtach - simple program that emulates the detach feature of screen.
dtach -a <socket> <options>
dtach -A <socket> <options> <command...>
dtach -c <socket> <options> <command...>
dtach -n <socket> <options> <command...>
dtach -N <socket> <options> <command...>
dtach -p <socket>
dtach is a program that emulates the detach feature of screen. It is designed to be transparent and un-intrusive; it avoids interpreting the input and output between attached terminals and the program under its control. Consequently, it works best with full-screen applications such as emacs.
dtach is intended for users who want the detach feature of screen without the other overhead of screen. It is tiny, does not use many libraries, and stays out of the way as much as possible.
A session in dtach is a single instance in which a program is running under the control of dtach. The program is disassociated from the original terminal, and is thus protected from your original terminal being disconnected for some reason.
Other instances of dtach can attach themselves to a particular session. Input and output is copied between the program running in the dtach session, and the attached terminals.
dtach avoids interpreting the communication stream between the program and the attached terminals; it instead relies on the ability of the attached terminals to manage the screen.
Sessions are represented by Unix-domain sockets in the filesystem. No other permission checking other than the filesystem access checks is performed. dtach creates a master process that monitors the session socket, the program, and any attached terminals.
dtach has several modes of operation. It can create a new session in which a program is executed, or it can attach to an existing session. The first argument specifies which mode dtach should operate in.
dtach has a few options that allow you to modify its behavior. Each attaching process can have separate settings for these options, which allows for some flexibility.
none disables redrawing completely, ctrl_l sends a Ctrl L character to the program if the terminal is in character-at-a-time and no-echo mode, and winch forces a WINCH signal to be sent to the program.
When creating a new session, the specified method is used as the default redraw method for the session. If not specified, the ctrl_l method is used.
The following example creates a new session that has the detach character and suspend processing disabled. A socket is created in the /tmp directory for the session.
$ dtach -c /tmp/foozle -Ez bash
The following example attaches to the /tmp/foozle session if it exists, and if not, creates a new session using /tmp/foozle as the socket for the session. Processing of the suspend character is also disabled for the attach instance.
$ dtach -A /tmp/foozle -z bash
The following example attaches to the /tmp/foozle session, using the winch redraw method to redraw the screen.
$ dtach -a /tmp/foozle -r winch
The following example creates a new session and sets the default redraw method for the session to the winch redraw method.
$ dtach -c /tmp/foozle -r winch bash
Ned T. Crigler <crigler@users.sourceforge.net>.
May 2016 | dtach 0.9 |