Администрирование FreeBSD, Linux, ... Примеры работы с утилитой screen Thu, November 21 2024  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.


Примеры работы с утилитой screen Печать
Добавил(а) microsin   

Пример работы с утилитой screen: настраиваются две сессии, одна для работы консолью роутера, подключенного к /dev/ttyUSB0, и другая для работы с коммутатором Cisco 2960, подключенного к /dev/ttyUSB1. Имя текущего пользователя x-terminal-emulator - myuser.

1. Командой screen -ls можно посмотреть текущие сессии screen:

$ screen -ls
No Sockets found in /run/screen/S-myuser

Сообщение "No Sockets found in ..." говорит нам, что пока не запущена ни одна сессия screen.

2. Настройка с помощью утилиты stty подключения к /dev/ttyUSB0, скорость 115200, 8 бит (cs8), 1 стоп-бит (-cstopb), без контроля четности (-parenb), управление потоком RTS/CTS отключено (-crtscts):

$ stty -F /dev/ttyUSB0 115200 cs8 -cstopb -parenb -crtscts

3. Запуск сессии с настроенными параметрами для /dev/ttyUSB0, имя сессии USB0:

$ screen -S USB0 /dev/ttyUSB0 115200
# Для отключения сессии: Ctrl+a d
$ screen -ls
There is a screen on:
 44577.USB0 (18.11.2024 09:40:51) (Detached)
1 Socket in /run/screen/S-myuser.

Команда screen -ls показывает, что активна сессия 44577.USB0, находящаяся в отключенном состоянии.

4. Настройка подключения к /dev/ttyUSB1, скорость 115200, 8 бит (cs8), 1 стоп-бит (-cstopb), без контроля четности (-parenb), управление потоком RTS/CTS отключено (-crtscts):

$ stty -F /dev/ttyUSB1 115200 cs8 -cstopb -parenb -crtscts

5. Запуск сессии с настроенными параметрами для /dev/ttyUSB0, имя сессии USB1:

$ screen -S USB1 /dev/ttyUSB1
# Для отключения сессии: Ctrl+a d
$ screen -ls
There are screens on:
 45008.USB1 (18.11.2024 09:44:45) (Detached)
 44577.USB0 (18.11.2024 09:40:51) (Detached)
2 Sockets in /run/screen/S-myuser.

Команда screen -ls показывает, что активны две сессии, 44577.USB0 и 45008.USB1, находящиеся в отключенном состоянии.

Теперь командами screen -r имясесии можно зайти в любую нужную сессию (с предварительным отключением от предыдущей сессии через Ctrl+a d).

[Горячие клавиши screen]

Внутри сессии screen работают следующие комбинации клавиш, показанные в таблице Здесь C^ обозначает нажатую клавишу Ctrl, S^ нажатую клавишу Shift. Это не полный список, а комбинации клавиш, которыми я пользуюсь чаще всего (полную справку можно получить командой man screen, также см. [2]):

Hotkey      Функция
C^a ? Краткая напоминалка по горячим клавишам.
C^a d Выход с отключением от текущей сессии. Сессия остается в состоянии (Detached).
C^a D D Выход с отключением от текущей сессии и закрытием окна терминала. Сессия остается в состоянии (Detached).
C^a k Выход с завершением текущей сессии.
C^- Уменьшение шрифта.
C^ S^+ Увеличение шрифта.
C^a c Временный выход из сессии, у неё остается состояние (Attached). Возврат обратно в сессию командой exit.
C^a C Очистить окно.
C^a h (hardcopy) Записать копию текущего окна в файл hardcopy.n.
C^a H (log) Начать/закончить запись сессии работы в текущем окне в файл screenlog.n.
C^a i Вывод информации о текущем окне.
C^a C^t Показать информацию о системе (текущее время, имя устройства, настройки порта).

[Ссылки]

1. Команда screen Linux site:losst.pro.
2. man screen site:opennet.ru.
3. How do I connect to TTY/COM (/dev/ttyUSB0)? site:askubuntu.com.
4. 'screen /dev/ttyUSB0' with different options such as databit, parity, etc site:stackoverflow.com.
5. Quickly switching between virtual sessions (screen?) site:superuser.com.
6. Minicom and screen in background site:superuser.com.

 

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


Защитный код
Обновить

Top of Page