Настольная книга по Linux/Текстовые терминалы
Основные операции
[править]Очистка терминала (во многих интерпретаторах командной строки — C-l):
$ clear
Сброс (например, после случайной $ cat < photo.jpeg):
$ reset
Выбор цвета символов white и фона blue:
$ setterm -fore white -back blue -store
Выяснить имя файла устройства для текущего терминала:
$ tty
Поиск процессов, управляющим терминалом которых является /dev/pts/42 (см. также раздел Процессы):
$ ps -t /dev/pts/42 $ ps -t pts/42
Опрос терминала и установка переменных COLUMNS, LINES соответственно текущим значениям количества столбцов и строк (полезно при подключении к «удаленной» системе через последовательный порт — включая эмулируемый, например, QEMU):
$ eval "$(resize)"
Мультиплексоры
[править]Существует ряд программ, позволяющих нескольким приложениям «попеременно» использовать один и тот же терминал. Эти же программы позволяют свободно переключать такой «многооконный» сеанс между несколькими терминалами, что позволяет, например, начать работу с приложением для терминала локально (на виртуальном терминале Linux или через Xterm), затем «отключить» сеанс от локального терминала и снова «подключить» его через SSH.
При использовании SSH, эти программы дают еще и некоторую защиту от разрыва связи — после перезапуска SSH, можно продолжить работу с существующим сеансом без каких-либо негативных последствий для запущенных в таком сеансе приложений.
Похожую функциональность для X Window System предлагают программы Winswitch и Xpra.
Screen
[править]Внешние команды
[править]Примеры команд этого раздела могут быть использованы вне существующего сеанса Screen.
Начать новый сеанс Screen:
$ screen
Начать новый сеанс с именем session, без подключения к этому сеансу:
$ screen -dmS session
Подключиться к сеансу с именем session:
$ screen -x session
… К сеансу с идентификатором процесса 65537:
$ screen -x 65537
… К единственному существующему сеансу:
$ screen -x
Вывести список сеансов:
$ screen -ls
Внутренние команды
[править]Внутренние команды могут быть привязаны к клавиатурным комбинациям, всегда начинающимся с «признака команды» — C-a или другого, определяемого пользователем (опцией -e
командной строки запуска Screen, или же командами escape
, defescape
— которые могут быть помещены в ~/.screenrc
, или выполнены через командную строку Screen.)
В данном разделе, мы будем предполагать настройки по-умолчанию.
Вызвать подсказку по клавиатурным комбинациям — C-a ?.
Вызвать командную строку Screen — C-a :. Кроме того, выполнить команду Screen команда аргументы… можно так:
$ screen -X команда аргументы…
Например:
$ screen -X echo 'Hello, world!'
Создать новое окно Screen можно или комбинацией C-a c, или следующей командой:
$ screen
Создать окно с заголовком title, номером не ниже 28 (если найдется такой неиспользуемый номер), и запуская на нем программу top:
$ screen -t title 28 top
Создать окно для взаимодействия с устройством через последовательный порт /dev/ttyS0 (/dev/ttyUSB1, /dev/pts/2, etc.; можно использовать вместо cu(1) или Minicom):
$ screen /dev/ttyS0 $ screen /dev/ttyUSB1 $ screen /dev/pts/2
Установить вывод в строке состояния терминала текущего времени, номера текущего окна, и его собственной строки состояния:
$ screen -X hardstatus string '%0c %3n. %h'
При использовании Screen, например, в Xterm, строка состояния будет выведена в заголовке окна последнего. На других терминалах, строку состояния можно выводить нижней строкой окна:
$ screen -X hardstatus lastline
… Всегда выводить строку состояния нижней строкой окна:
$ screen -X hardstatus alwayslastline
Tmux
[править]Начать новый сеанс:
$ tmux new
Присоединиться к существующему (фоновому) сеансу:
$ tmux attach
Виртуальные терминалы Linux
[править]«Обычные» клавиатурные комбинации:
- Alt + F1, …, Alt + F12 — переключение на виртуальный терминал (ВТ) № 1‒12;
- Alt + ← и Alt + → — переключение на предыдущий и следующий ВТ;
- Shift + PageUp и Shift + PageDown — просмотр буфера прокрутки.
Создание нового виртуального терминала с запуском интерпретатора командной строки на нем:
$ openvt $ open $ busybox openvt
Переключение на виртуальный терминал № 5:
$ chvt 5
Удаление виртуального терминала № 3 (если не используется каким-либо процессом):
$ deallocvt 3
Удаление всех неиспользуемых:
$ deallocvt
Настройка функций энергосбережения:
$ setterm -blank 3 -powersave on -powerdown 7
Отключение:
$ setterm -blank 0 -powersave off -powerdown 0
Включение Unicode-режима:
$ unicode_start
Установка шрифта CyrSlav-TerminusBold14:
$ setfont CyrSlav-TerminusBold14
См. также
[править]- Статьи GNU Screen и Tmux Википедии.
- http://citkit.ru/articles/609/ — советы по использованию Screen.