Главная > Среда и утилиты > tmux

tmux: Руководство по мультиплексору терминала

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

Что такое tmux?

tmux — это сокращение от 'Terminal Multiplexer', которое позволяет разделить один экран терминала на несколько независимых сессий, окон (Window) и панелей (Pane). Это незаменимый инструмент для продолжения работы при разрыве SSH-соединения или для одновременного мониторинга нескольких задач.

3 ключевые концепции

tmux имеет иерархическую структуру: Сессия > Окно > Панель.

  • Сессия (Session): Самая крупная единица. Это рабочее пространство, содержащее несколько окон. (Пример: 'project-A') Даже при отключении от сессии (detach) работа продолжает выполняться в фоновом режиме.
  • Окно (Window): Подобно вкладкам в сессии. Одна сессия может иметь несколько окон.
  • Панель (Pane): Небольшой экран терминала, полученный путем разделения одного окна на несколько частей. (Пример: верхняя часть для редактирования кода, нижняя для просмотра логов)

Клавиша префикса (Prefix Key)

Комбинация клавиш, которую необходимо нажать перед выполнением команды внутри `tmux`. По умолчанию это Ctrl+b. (Пример: чтобы создать новое окно, нажмите Ctrl+b, отпустите, затем нажмите c.) В этом руководстве эта клавиша обозначается как [Prefix].

Основные команды (Shell)

Команды, вводимые непосредственно в терминале (Shell) для управления сессиями tmux.

1. Управление сессиями

2. Справка/Версия

Сгенерированная команда:

Комбинируйте команды.

Описание:

`tmux` Запускает команду.

Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.

Основные горячие клавиши (внутри tmux)

Горячие клавиши, используемые при подключении к сессии `tmux`. Сначала нажмите [Prefix] (по умолчанию Ctrl+b), затем следующую клавишу.

Управление сессиями и окнами (Window)

  • [Prefix] + d: Отсоединиться от сессии (Detach). Работа продолжает выполняться в фоновом режиме.
  • [Prefix] + c: Создать новое окно (Create)
  • [Prefix] + w: Просмотреть список окон (Windows)
  • [Prefix] + n: Перейти к следующему окну (Next)
  • [Prefix] + p: Перейти к предыдущему окну (Previous)
  • [Prefix] + [0-9]: Прямой переход к окну с соответствующим номером
  • [Prefix] + ,: Переименовать текущее окно
  • [Prefix] + &: Закрыть текущее окно (требуется подтверждение)

Управление панелями (Pane)

  • [Prefix] + %: Разделить текущую панель вертикально (влево/вправо)
  • [Prefix] + ": Разделить текущую панель горизонтально (вверх/вниз)
  • [Prefix] + [стрелки]: Переместить фокус на панель в направлении стрелки
  • [Prefix] + o: Перемещаться по панелям по кругу
  • [Prefix] + z: Развернуть/свернуть текущую панель на весь экран (Zoom)
  • [Prefix] + x: Закрыть текущую панель (требуется подтверждение)

Примеры сценариев использования (Shell)

Типичный процесс запуска и управления tmux в терминале.

Создание и подключение к сессии my-project

tmux new -s my-project

Отсоединение от сессии (Detach)

Внутри сессии нажмите [Prefix] (Ctrl+b), затем клавишу d, чтобы выйти из сессии. Работа будет продолжаться.

Просмотр списка запущенных сессий

tmux ls

Повторное подключение к сессии my-project

tmux attach -t my-project

Принудительное завершение сессии my-project

tmux kill-session -t my-project

Установка

tmux легко установить через менеджеры пакетов большинства дистрибутивов Linux.

Debian/Ubuntu

sudo apt update && sudo apt install -y tmux

RHEL/CentOS/Fedora

sudo dnf install -y tmux

Arch Linux

sudo pacman -S --needed tmux

openSUSE

sudo zypper install -y tmux

Советы и примечания

Рекомендуемые настройки/привычки

  • Сразу после подключения по SSH: Создав сессию, например `tmux new -s work`, сразу после подключения к удаленному серверу, вы сможете безопасно продолжить работу, даже если соединение прервется.
  • Режим мыши: Добавление `set -g mouse on` в ~/.tmux.conf позволяет изменять размер панелей, выбирать окна и прокручивать с помощью мыши.
  • Файл конфигурации: Настройте свои собственные горячие клавиши или тему в ~/.tmux.conf.
  • Изменение префикса: Если Ctrl+b неудобно, вы можете изменить его на `set -g prefix C-a`.

Связанные команды

Функционально схожие или часто используемые команды.



Те же команды в категории