Well, not knowing what other explanations you’ve read but don’t understand/grasp makes it a bit difficult to narrow down specifics, though to start from the beginning, tmux
is a terminal multiplexer, what that means is that it will allow multiple sessions running concurrently under the same virtual terminal. It provides keyboard shortcuts to switch between them, or split them and display them concurrently.
The biggest use case for me however (though I use an older one called screen
out of hard to shake habits) is the ability to detach and attach at will, so that any disconnected remote sessions won’t kill whatever I happen to be working on. Alternatively, I can have running sessions locally on my current machine and then I can go elsewhere and remote in and resume from where I’ve left off.
A somewhat frowned upon use case is to use it to run “background” processes on a remote server - like a development web service that you just can’t be bothered to properly package/daemonize - just open screen
or tmux
, start it, and detach the session and it should stay running barring any other problems.
Man, this post brought me back memories of Unreal Tournament (and 2k4) and now I feel very nostalgic for all those custom maps and weapons. Used to spend so much time playing giant insta-gib deathmatches (and when I had all the time in my late-teens/early 20s). Wish that game is still supported.