Как только вы освоитесь с командной строкой Linux, вы обнаружите, что все чаще и чаще используете терминалы, часто несколько одновременно. xterm с вкладками — это один из способов отслеживания нескольких терминальных сессий, но это не очень удобно при работе с удаленным доступом или виртуальной консолью. Именно здесь на помощь приходит Tmux, позволяющий запускать несколько сеансов в одном терминале, но это только начало.
Запустите Tmux в терминале, и мало что произойдет, кроме появления строки состояния в нижней части окна терминала, но теперь вы находитесь в другом терминале. Запустите долго выполняющуюся команду, например $ watch date
, затем нажмите Ctr+b c, и она исчезнет. Запустите другую команду, затем нажмите Ctrl+b n, и вы вернетесь к программе, которая все еще выполняется. Ctrl+b c создаст новый терминал, оставив прежний нетронутым, Ctrl+b n переключает между ними.
Теперь нажмите Ctrl+b d, чтобы выйти из Tmux и вернуться в исходную оболочку. Откройте другой терминал и запустите:
$ tmux attach
Теперь вы вернулись в исходную сессию Tmux. Tmux также работает через SSH — Вы можете подключиться по SSH к своему домашнему компьютеру, например, с работы, открыть сеанс Tmux и запустить что-то, а затем выйти.
Позже вы можете снова подключиться к своему сеансу, либо с работы, либо когда вернётесь домой и продолжите работу с того места, на котором остановились. Даже если SSH-соединение прервано, программы, запущенные в Tmux продолжат работу.
Существует множество других опций, все подробно описаны в man-page. Вы можете разделить текущий экран, более одного раза, если требуется запустить разные программы или даже подключаться к разным компьютерам в каждой панели.