projects:tmux
Различия
Показаны различия между двумя версиями страницы.
projects:tmux [2025/03/24 15:04] – создано - внешнее изменение 127.0.0.1 | projects:tmux [2025/03/27 00:18] (текущий) – удалено | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== tmux: мультисессии в терминале ====== | ||
- | |||
- | ===== Назначение ===== | ||
- | **tmux** (terminal multiplexer) позволяет запускать несколько терминальных сессий в одном окне. Он полезен для: | ||
- | * удалённой работы — процессы продолжают работать после отключения SSH | ||
- | * управления множеством задач в одном терминале | ||
- | * переключения между окнами/ | ||
- | |||
- | ===== Установка (Raspberry Pi / Linux) ===== | ||
- | <code bash> | ||
- | sudo apt update | ||
- | sudo apt install tmux | ||
- | </ | ||
- | |||
- | |||
- | ===== Настройка tmux ===== | ||
- | Добавить в '' | ||
- | <code bash> | ||
- | # Увеличенная история вывода | ||
- | set-option -g history-limit 100000 | ||
- | |||
- | # Отключение режима очистки экрана | ||
- | set -g terminal-overrides ' | ||
- | |||
- | # Цвет и стиль строки статуса | ||
- | set -g status-style " | ||
- | |||
- | # Левая часть — имя сессии | ||
- | set -g status-left '# | ||
- | |||
- | # Правая часть — дата и время | ||
- | set -g status-right '# | ||
- | |||
- | # Поддержка мыши | ||
- | set -g mouse on | ||
- | |||
- | # Поддержка 256-цветов и корректной работы с fzf/micro | ||
- | set -g default-terminal " | ||
- | |||
- | </ | ||
- | |||
- | **Пример цветов** | ||
- | |||
- | < | ||
- | # Примеры цветов (можно менять colourXXX в status-style): | ||
- | # Красный: | ||
- | # Ярко-синий: | ||
- | # Ярко-зелёный: | ||
- | # Тёмный серый: | ||
- | # Жёлтый: | ||
- | # Светло-синий: | ||
- | # Пурпурный: | ||
- | # Оранжевый: | ||
- | # Чёрный | ||
- | # Тёмно-серый | ||
- | # Красный | ||
- | # Ярко-красный | ||
- | # Зелёный | ||
- | # Ярко-зелёный | ||
- | # Жёлтый | ||
- | # Ярко-жёлтый | ||
- | # Синий | ||
- | # Ярко-синий | ||
- | # Пурпурный | ||
- | # Розовый | ||
- | # Голубой | ||
- | # Ярко-голубой | ||
- | # Белый | ||
- | # Ярко-белый | ||
- | # Orange | ||
- | # DarkOrange | ||
- | # LightOrange | ||
- | # | ||
- | # bold | ||
- | # underscore | ||
- | # italics | ||
- | # blink Мигающий текст (редко) | ||
- | # reverse | ||
- | # fg=цвет | ||
- | # bg=цвет | ||
- | |||
- | </ | ||
- | |||
- | **Пример стилей** | ||
- | |||
- | < | ||
- | # | ||
- | set -g status-left '# | ||
- | set -g status-right '# | ||
- | </ | ||
- | |||
- | **Перечень стилей** | ||
- | <code bash> | ||
- | bold Жирный текст | ||
- | underscore Подчёркнутый текст | ||
- | italics Курсив (не везде работает) | ||
- | blink Мигающий текст (редко) | ||
- | reverse Инверсия fg и bg | ||
- | fg=цвет Цвет шрифта | ||
- | bg=цвет Цвет фона | ||
- | </ | ||
- | |||
- | **Применить настройки без перезапуска tmux** | ||
- | <code bash> | ||
- | tmux source-file ~/ | ||
- | </ | ||
- | |||
- | ===== Прописать запуск tmux в bash (авто-возврат в сессию) ===== | ||
- | Добавить в конец '' | ||
- | <code bash> | ||
- | # Автоподключение к tmux | ||
- | if command -v tmux &> /dev/null && [ -z " | ||
- | tmux attach || tmux new -s default | ||
- | fi | ||
- | </ | ||
- | |||
- | ===== Настройка профиля в Windows Terminal ===== | ||
- | <code json> | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | }, | ||
- | </ | ||
- | |||
- | ===== `.bat` файл для быстрого запуска из Windows ===== | ||
- | <code bat> | ||
- | @echo off | ||
- | start wt -w 0 nt -p " | ||
- | </ | ||
- | |||
- | ===== Основные команды tmux ===== | ||
- | |||
- | **Вход / выход: | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | |||
- | **Управление сессией (после Ctrl+B):** | ||
- | * '' | ||
- | * '' | ||
- | * ''"'' | ||
- | * стрелки + Ctrl+B — перемещение по панелям | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | |||
- | **Выход: | ||
- | * '' | ||
- | |||
- | ===== Пример использования ===== | ||
- | 1. Подключение по SSH к Raspberry Pi\\ | ||
- | 2. Автоматически открывается или подключается '' | ||
- | 3. Открыты 2 панели: | ||
- | * верхняя — '' | ||
- | * нижняя — '' | ||
- | 4. Закрытие окна терминала — процессы не завершаются\\ | ||
- | 5. Возврат: | ||
- | |||
- | |||
- | ===== Сохранение истории после отсоединения ===== | ||
- | Чтобы tmux сохранял scrollback (историю терминала), | ||
- | <code bash> | ||
- | set-option -g history-limit 100000 | ||
- | set -g terminal-overrides ' | ||
- | </ | ||
- | ===== Пример: | ||
- | <code bash> | ||
- | tmux new -s rasp | ||
- | # Работай внутри сессии | ||
- | # Закрой окно — сессия продолжит работать | ||
- | # Подключись снова: | ||
- | tmux attach -t rasp | ||
- | </ | ||
- | |||
- | |||
- | |||
- | ===== Замечания ===== | ||
- | * '' | ||
- | * удобно сочетать с fzf и launcher_fzf для запуска скриптов | ||
- | * конфигурация: | ||
- | * Можно использовать совместно с fzf, micro, mc и др. | ||
- | * '' | ||
- | * Закрытие терминала без выхода — безопасно, | ||
- | |||
- | Если нужно — можно добавить шаблон '' | ||
- | |||
projects/tmux.1742817859.txt.gz · Последнее изменение: — 127.0.0.1