What are good reasons to use linux terminal multiplexers such as screen and tmux instead of physical terminal?
Multiplexers provide additonal functionality that may be of benefit to your workflow; this includes:
- configurable scrollback (ie., number of lines to retain)
- searchable scrollback
- cut/copy and paste between clients (windows)
- persistence across sessions
- status line for system information
The most significant benefit is persistence. Start a job in a multiplexer session and you can log off knowing that when you log back in and reattach the job will still be running.
On your desktop, may be there isn't any obvious added value.
But when you start to work on a remote server through ssh, you will have a lot of terminals handy without having to connect each of them through ssh.
Also there is a concept of session, so you can remotely run a multiple shell session on a server, disconnect from it, and reconnect later to find your session up and running.
Sometimes, some tricky daemon needs to be launched in the terminal. This happens often with nodejs application, for example. Launching it with tmux/screen makes it easy, instead of nohuping the process....
Even some really sick people like myself, run terminator on a local desktop with plenty of ssh connections to remote tmux sessions :)
This way my hands never leave the keyboard, mice are for n00bs :)