tmux

раньше я описывал screen - консольный враппер над терминалами, очень полезный, гибкий, но не достаточно. там же я описал как работать с хоткеями.

обязательно учим хоткеи - это таже самая замечательная статья, очень рекомендую читать man tmux там описано всё. внизу есть самое необходимое - примеры.

tmux source-file ~/.tmux.conf

  • сделать то, что в этом файле конфигурации
    tmux kill-server
  • удалить все tmuxы, сбросить предыдущий конфиг ^
    tmux list-sessions
  • ls список сессий. сессия содержит несколько окон. в окне есть несколько панелей (pane) - почти регион, панели можно свопать, ресайзить, и конечно между ними можно переключаться (ctrl+b стрелка вверх или вниз или …)
    tmux select-pane
  • selectp
    tmux attach-session
  • attach так можно подсоедениться к уже созданной раннее сессии
    tmux new-session
  • new
    tmux new-window
  • neww

в баше нужно экранировать символ ; он используется тмуксом по-особенному, т.е. именно для баша ставим обратный слеш \;

выше перечисленные команды имеют хот кеи (внутри тмукса) и команды алиасы (которые я и написал). пример создания новой сессии с новым окном, с указанием имён:

tmux new -s testSess -n testWind\; attach

пример создания двух панелей (pane) и запуск в них двух команд:

tmux new -s testSess -n testWind -d ‘top’ \; split-window -d ‘htop’ \; attach

разделение вертикальной линией и ещё горизонтальной, т.е. 3 панели:

tmux new -s testSess -n testWind -d ‘top’ \; split-window -d ‘htop’ \; split-window -h \; attach


тот же пример, но в реальной жизни, запускаем сервер на ноде, тайпскрипт в вотче, и вебпак в вотче:

tmux new -s fusionProject -n devTools -d ‘npm start’ \; split-window -d ‘tsc –watch’ \; split-window -h ‘webpack –watch’ \; attach

теперь мы это можем спокойно вписать в скрипт запуска, и больше не вспоминать, как же запускается это приложение, и что там за параметры нужно сделать.