как выйти из “screen /dev/ttyUSB0 115200”

Вопрос или проблема

С помощью кабеля usb-to-serial я могу успешно подключиться к оборудованию через screen /dev/ttyUSB0 115200

Существует ли команда внутри screen, которая закроет его и вернет мой терминал к запросу на ввод? Это в RHEL-8.10. ctrl-d, ctrl-c и ctrl-z не имеют эффекта.

Все команды в Screen начинаются с префиксного клавиши, обычно Ctrl-a. Чтобы завершить конкретное окно Screen, нужно нажать Ctrl-a, затем k.

Команды для screen (по умолчанию) начинаются с ctrla; вы можете найти их в man screen (классическое место для поиска документации!). (ctrla — это “символ-экрап” для screen)

В вашем случае, вам нужно ctrla, затем d, чтобы detach (если вы хотите вернуться к сеансу позже, используя screen -r), или k, если вы хотите kill текущий сеанс.

Тем не менее, screen больше предназначен для мультиплексирования терминалов (как более современный tmux), чем для хорошего терминала для серийных подключений, на мой скромный взгляд. Если вы еще не привыкли к командам screen, рассмотрите возможность использования чего-то другого — например, picocom будет чуть менее запутанным, если вам нужно только серийное соединение; ваш screen /dev/ttyUSB0 115200 будет picocom -b 115200 /dev/ttyUSB0. Выход из picocom это ctrla, затем ctrlx.

Ответ или решение

Чтобы выйти из сессии, запущенной с помощью команды screen /dev/ttyUSB0 115200, вам необходимо использовать специальные команды, встроенные в утилиту screen. Давайте подробно разберемся, как это осуществить в операционной системе RHEL 8.10.

Теория

screen — мощная утилита для управления несколькими терминальными сессиями одновременно. Она позволяет открывать, закрывать и переключаться между сессиями без потери данных, что особенно полезно при работе с удаленными сервисами. В screen все команды начинаются с префикса Ctrl-a, который действует как «экранирующий» символ, переводя ваш ввод из пользовательского режима в управляющий режим.

Пример

Если вы уже подключились к вашему устройству через screen, вы можете воспользоваться следующими командами для выхода:

  1. Отключиться от сессии (detach):
    Нажмите Ctrl-a, затем d. Эта команда не завершает сессию, а просто возвращает вас к командной строке, позволяя в дальнейшем подключиться к ней обратно с помощью screen -r.

  2. Завершить сессию (kill):
    Нажмите Ctrl-a, затем k. Затем вам будет предложено подтвердить действие (y или n). Эта команда полностью завершает текущую сессию screen.

Применение

Если вы часто сталкиваетесь с задачами управления последовательными соединениями и работа с командами screen вызывает затруднения, возможно, стоит обратить внимание на более специализированные инструменты, такие как picocom. Он более прост в использовании для выполнения аналогичных задач:

  • Запустить picocom вы можете командой: picocom -b 115200 /dev/ttyUSB0.
  • Чтобы выйти из picocom, используйте Ctrl-a, затем Ctrl-x.

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

Таким образом, использование команд Ctrl-a + d для временного выхода из screen или Ctrl-a + k для завершения сессии поможет вам быстро и без труда управлять вашими терминальными сессиями при работе с оборудованием через USB-to-Serial адаптер.

Оцените материал
Добавить комментарий

Капча загружается...