
Terminal multiplexer that creates, manages, and controls multiple terminal sessions from a single screen
tmux is a terminal multiplexer that allows users to create, access, and control multiple terminal sessions from a single screen. It enables running multiple command-line programs simultaneously within separate panes and windows, all managed through keyboard shortcuts and commands. A key capability is session persistence - tmux sessions can be detached from the current terminal and continue running in the background, then reattached later from the same or different terminal.
The tool runs on OpenBSD, FreeBSD, NetBSD, Linux, macOS, and Solaris. It depends on libevent 2.x and ncurses libraries for its functionality. tmux supports advanced features like window splitting, session sharing between multiple users, and scriptable configuration through configuration files.
Developers, system administrators, and power users commonly use tmux for managing long-running processes, maintaining persistent work sessions across SSH connections, and organizing complex terminal-based workflows. The tool includes debugging capabilities through verbose logging modes and provides bash completion for command-line usage.
# via Source build
./configure && make && sudo make install
# via From git
git clone https://github.com/tmux/tmux.git && cd tmux && sh autogen.sh && ./configure && make