niceos:tmux
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версия | |||
| niceos:tmux [2025/03/27 00:17] – удалено - внешнее изменение (Дата неизвестна) 127.0.0.1 | niceos:tmux [2025/03/27 00:17] (текущий) – ↷ Страница перемещена из projects:tmux в niceos:tmux | ||
|---|---|---|---|
| Строка 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 и др. | ||
| + | * '' | ||
| + | * Закрытие терминала без выхода — безопасно, | ||
| + | |||
| + | Если нужно — можно добавить шаблон '' | ||
| + | |||
