Вопрос или проблема
Я использую Ubuntu Server и хочу иметь несколько терминалов. Screen работает нормально, но… он не очень дружелюбен к пользователю. Я имею в виду… после нажатия Ctrl+A вы не получаете уведомление о том, что находитесь в командном режиме, чтобы отобразить терминалы, вам нужно ввести ", что совсем не удобно (на моей клавиатуре это Shift+1), и так далее..
Я посмотрел на byobu, но, похоже, возникают ошибки: линии статуса ЦП все время увеличиваются вниз и в конечном итоге закрывают мой экран.. но в общем мне это по-прежнему не очень нравится.
Я искал что-то с графическим интерфейсом, как в nano… с нижней частью экрана, заполненной инструкциями/статусом и верхней частью, разумеется, моим текущим терминалом.
Существует ли что-то подобное? Или, в дополнение, можете помочь мне исправить ошибку в byobu?
Tmux – это переписывание GNU Screen, tmux предлагает множество улучшений. Некоторые из самых важных включают клиент-серверную модель, которая позволяет вам подключаться к сессии tmux из нескольких мест, и более чистый формат конфигурационного файла. Ознакомьтесь с FAQ по tmux, чтобы узнать список способов, которыми он отличается от GNU Screen.
Используйте эту команду для установки tmux на Ubuntu:
sudo apt-get install tmux
Как описано на howtogeek. Эта ссылка также содержит информацию о Dvtm & Dtach (Dvtm – это консольный мультиплексор, вдохновленный тайловыми окнами, а dtach добавляет возможность отсоединяться и повторно подключаться к сессиям dvtm).
Я написал более развернутый ответ здесь.
byobu с/или tmux
Я думаю, что byobu является более дружелюбной альтернативой. Он использует tmux в качестве бэкенда, поэтому у вас есть удобные сочетания клавиш byobu, а также tmux (по умолчанию Ctrl+a+..., вы можете изменить это с помощью F9 или byobu-config
).
С его сайта (смотрите также там отличный скринкаст):
Byobu – это текстовый менеджер окон и терминальный мультиплексор с открытым исходным кодом GPLv3. Он был первоначально разработан, чтобы предоставить элегантные улучшения к иначе функциональному, простому, практичному GNU Screen, для серверного дистрибутива Ubuntu. Сейчас Byobu включает в себя улучшенные профили, удобные сочетания клавиш, утилиты конфигурации и переключаемые системные статусы уведомлений как для менеджера окон GNU Screen, так и для более современного терминального мультиплексора Tmux, и работает на большинстве дистрибутивов Linux, BSD и Mac.
Установите его с помощью
sudo apt install byobu
Вероятно, tmux можно настроить (с помощью плагинов, таких как sensible), чтобы он стал гораздо более удобным.
Скриншот, использующий hollywood
:
Вот также статья howtogeek об этом.
Я использую его с Alacritty (и другими) в полноэкранном режиме. Не в другом окне: Просто там, на F12.
Zellij
Я также искал действительно удобную альтернативу, tmux и byobu не совсем подходят, screenie просто обертка вокруг screen, но Zellij действительно пытается улучшить удобство использования и справляется с этим довольно хорошо для меня.
По умолчанию вы сразу видите внизу экрана сочетания клавиш, и следуя обновляющимся инструкциям, легко разделить экран, отсоединиться, переключиться на другую сессию и т.д.
Все, что вам действительно нужно помнить в командной строке, это zellij
или zellij attach
, и из-за четких инструкций по использованию переключателя сессий последнее является необязательным.
Нет необходимости запоминать все сложные сочетания клавиш, потому что они всегда объясняются на экране, но если вы хотите увидеть демонстрацию его возможностей, учебные пособия и скринкасты делают это довольно хорошо.
Интерфейс также реагирует на клики мыши для выбора активных панелей и вкладок.
Screenie
screenie — это небольшая и легкая обертка вокруг screen(1), предназначенная для
упрощения выбора сессий на системе с несколькими сессиями экрана.
screenie предоставляет простое интерактивное меню для выбора существующей
сессии экрана или для создания новой.
Ввод screenie
сам по себе запускает его в интерактивном режиме и показывает это меню:
screenie - обработчик сессий терминала
a) новая сессия
q) выйти
К символу параметра можно добавить к выбору сессии:
'x' для присоединения к выбранной сессии с помощью команды 'screen -x',
'd' для присоединения к выбранной сессии с помощью команды 'screen -rd'.
выбор:
Затем вас проведут через создание новой фоновой сессии. Вам нужно дать имя вашей сессии (test
ниже) и вы можете оставить job:
пустым. Если есть какие-либо фоновые сессии, работающие screenie
перечисляет их в своем меню:
screenie - обработчик сессий терминала
1) 105970.test (06/10/2022 02:22:21 PM)
a) новая сессия
q) выйти
К символу параметра можно добавить к выбору сессии:
'x' для присоединения к выбранной сессии с помощью команды 'screen -x',
'd' для присоединения к выбранной сессии с помощью команды 'screen -rd'.
выбор:
Выбор индекса перед фоновой сессией, например 1
, откроет эту сессию.
Отсоединиться от screen
можно нажав Ctrl+A, а затем D, и вы вернетесь в интерактивное меню screenie
.
Затем вы можете выйти из screenie
, нажав Q, а затем Enter.
Когда вы хотите снова вернуться к фоновым сессиям, введите screenie
снова в терминале, чтобы снова увидеть меню.
Надеюсь, это поможет
Ответ или решение
Вопрос, который вы подняли, касается нахождения более удобного для пользователя альтернативного решения к программе screen для работы с множеством терминалов в среде Ubuntu Server. Давайте рассмотрим возможные варианты, которые могут удовлетворить ваши требования, а также предложим некоторые рекомендации по улучшению работы с существующими инструментами.
1. Tmux: Удобная Альтернатива
Tmux является одной из самых известных альтернатив GNU Screen, предлагая улучшенный пользовательский интерфейс и дополнительные функции. В отличие от screen, tmux работает по модели клиент-сервер, что позволяет подключаться к одной и той же сессии из разных мест. Конфигурация tmux более чистая и интуитивно понятная. Установка tmux в Ubuntu выполняется с помощью команды:
sudo apt-get install tmux
Основные Преимущества Tmux:
- Графический интерфейс: С tmux вы сможете настроить отображение информации о сессии и состояниях внизу экрана.
- Динамическое переключение: Во время работы вы сможете быстро переключаться между панелями и сессиями, используя сочетания клавиш.
- Кастомизация: Широкие возможности для настроек и поддержки плагинов, которые могут улучшить функциональность.
2. Byobu: Упрощённый Tmux
Если вам всё ещё не нравится tmux, Byobu может стать для вас более удобным инструментом. Это оболочка для tmux и screen, которая облегчает использование этих программ. Byobu предлагает понятные сочетания клавиш и удобный интерфейс, а также удобные панели статуса.
Вы можете установить Byobu следующей командой:
sudo apt install byobu
Преимущества Byobu:
- Интерфейс с командными подсказками: Клавиши команд отображаются в нижней части экрана, что упрощает их запоминание.
- Гибкая настройка: Вы можете настроить большинство опций через меню конфигурации.
3. Zellij: Дружественный к Пользователю
Zellij — это ещё одна относительно новая альтернатива, которая направлена на улучшение удобства использования терминального мультиплексора. Специфика Zellij в том, что он предлагает визуально привлекательный интерфейс с четкими подсказками и удобными сочетаниями клавиш. Установка Zellij может потребовать сборки из исходников, но он стоит того.
Ключевые Особенности Zellij:
- Наглядное управление: Все команды и их описание отображаются на экране, что избавляет от необходимости запоминать сочетания клавиш.
- Поддержка мыши: Вы можете взаимодействовать с интерфейсом с помощью мыши, что упрощает навигацию.
4. Screenie: Обёртка для Screen
Если вы по-прежнему хотите использовать screen, но с более удобным интерфейсом для выбора сессий, Screenie может стать вашим решением. Это обёртка для screen, позволяющая легко выбирать активные сессии.
Вы можете использовать команду screenie, чтобы открыть интерактивное меню для выбора существующих сессий или для создания новой:
screenie
Заключение
В зависимости от ваших предпочтений и нужд, вы можете выбрать одну из предложенных альтернатив, таких как tmux, Byobu или Zellij. Каждое из этих решений имеет свои уникальные преимущества, способствующие улучшению пользовательского опыта. Если вы хотите остаться с GNU Screen, использование Screenie поможет вам упростить управление сессиями.
Каждое из этих решений включает в себя свою кривую обучения, но большинство из них предлагают значительные улучшения в сравнении с стандартным интерфейсом screen. Наша рекомендация — попробовать каждое из решений и выбрать то, которое вам больше всего подходит.