stty

Установка атрибутов tty (POSIX)

Синтаксис:

stty [-a|-g] [операнды] [< устройство]

Опции:

-a
Вывести все параметры настройки.
-g
Вывести в "читабельной" форме.

Платформы:

ЗОСРВ «Нейтрино»

Целевые архитектуры:

aarch64, arm, armv7, e2k, mips, ppc, x86

Описание:

Утилита stty используется для установки и/или просмотра характеристик ввода-вывода терминала для устройства, которое является его стандартным потоком ввода. Если операнды не указаны, утилита stty отображает параметры настройки. Если операнды указаны, утилита stty изменяет состояние терминала согласно этим параметрам.

Параметры настройки терминала разделяются на две основные категории:

режим правки
Пользователь может править входные данные. Эти данные передаются программам только после нажатия CR. Выходные данные, как правило, представляются в удобочитаемом формате.
режим необработанных входных данных
Все данные поступают на терминал и выходят из него с некоторой дополнительной обработкой.

При работе в командной строке, терминал обычно находится в системном режиме правки. Полноэкранная программа, такая как редактор, напротив, переводит терминал в режим работы с необработанными данными.

Как правило, утилита stty отображает только важные настройки, связанные с системными настройками по умолчанию для режима правки или необработанных данных, и выводит только определенные управляющие символы. Если указана опция -a или -g, то утилита stty выводит все настройки.

Утилита stty управляет достаточно большим числом атрибутов и управляющих символов. Большинство этих параметров зависят от устройств, и их изменение пользователем требуется нечасто. Программы часто изменяют эти атрибуты терминалов в процессе своей работы, и в некоторых случаях (например, ABEND) могут оставлять параметры настройки терминала в неизвестном состоянии. Для восстановления приемлемого состояния терминала удобно использовать опцию stty +edit.

Поддерживаемые операнды

В нижеследующих таблицах приведены операнды, поддерживаемые утилитой stty. В этих таблицах используются следующие правила:

число
Десятичное целое число (например, 9600).
имя
Строка символов (например, vt100).
значение
Один символ (например, ~) или 2-значное шестнадцатеричное число (например, 1B) или одна из следующих пар символов:
Пара символов Шестнадцатеричный код
^- 00 (неопределенный)
от ^A до ^Z от 01 до 1A
^[ 1B
^\ 1C
^] 1D
^^ 1E
^_ 1F
^? 7F

Некоторые опции могут начинаться с символа "+" или "-":

+
Включить опцию.
-
Выключить опцию.

Если символы + или - не указаны, используется символ +.

Также следует отметить, что символ "=" в операндах ключевое_слово=значение является необязательным.


Note: Нижеследующие описания приведены для включенных опций.

Параметры управления линией передачи

baud=число
Скорости ввода и вывода информации в бодах
ispeed=число
Скорость ввода информации в бодах
ospeed=число
Скорость вывода информации в бодах
par=none
Отключить проверку четности (аналогично -parenb)
par=odd
Проверка на нечетность (аналогично +parenb, +parodd, -parstk)
par=even
Проверка на четность (аналогично +parenb, -parodd, -parstk)
par=mark
Четность по знаку (аналогично +parenb, +parodd, +parstk)
par=space
Четность по пробелу (аналогично +parenb, -parodd, +parstk)
bits=5
5-битовые символы
bits=6
6-битовые символы
bits=7
7-битовые символы
bits=8
8-битовые символы
stopb=2
Стоповые биты 2
stopb=1
Стоповые биты 1
{+|-}parenb
Включить проверку четности
+parodd
Включить проверку на нечетность
-parodd
Включить проверку на четность
{+|-}parstk
Постоянная четность
+cs5
Аналогично bits=5
+cs6
Аналогично bits=6
+cs7
Аналогично bits=7
+cs8
Аналогично bits=8
+cstopb
Аналогично stopb=2
-cstopb
Аналогично stopb=1
число
Аналогично baud=число
+evenp
Аналогично par=even, bits=7
-evenp
Аналогично par=none, bits=8
+parity
Аналогично par=even, bits=7
-parity
Аналогично par=none, bits=8
+oddp
Аналогично par=odd, bits=7
-oddp
Аналогично par=none, bits=8
{+|-}hupcl
Разорвать соединение при последней операции закрытия
{+|-}hup
Аналогично hupcl
{+|-}cread
Включить прием
{+|-}clocal
Предполагать отсутствие управления модемом
{+|-}ihflow
Активировать аппаратное управление потоком ввода
{+|-}ohflow
Активировать аппаратное управление потоком вывода
{+|-}isflow
Активировать программное управление потоком ввода
{+|-}osflow
Активировать программное управление потоком вывода
{+|-}ihpaged
Делить входные данные на страницы посредством аппаратного управления потоком
{+|-}ohpaged
Делить выходные данные на страницы посредством аппаратного управления потоком
{+|-}ispaged
Делить входные данные на страницы посредством программного управления потоком
{+|-}ospaged
Делить выходные данные на страницы посредством программного управления потоком

Параметры обработки входных данных

{+|-}ignbrk
Игнорировать поступающие аппаратные остановки
{+|-}brkint
Генерировать SIGINT при остановке
{+|-}ignpar
Игнорировать ошибки проверки четности
{+|-}parmrk
Ошибки проверки четности по знаку
{+|-}inpck
Включить программную проверку четности
{+|-}istrip
Удалять из поступающих символов 7-й бит
{+|-}inlcr
Преобразовывать NL в CR во входных данных
{+|-}onlcr
Преобразовывать NL в CR в выходных данных
{+|-}igncr
Игнорировать поступающие символы CR
{+|-}icrnl
Преобразовывать CR в NL во входных данных
{+|-}ixon
Аналогично osflow
{+|-}ixoff
Аналогично isflow
{+|-}isig
Генерировать сигналы при поступлении специальных символов
{+|-}icanon
Разрешить правку строк ввода
{+|-}iexten
Разрешить "дополнительные" специальные символы
{+|-}echo
Выводить поступающие символы
{+|-}echoe
Символ удаления удаляет отображаемый символ
{+|-}echok
Символ уничтожения удаляет отображаемую строку
{+|-}echonl
Повторять NL, в том числе при отключенном ECHO
{+|-}noflsh
Не сбрасывать ввод-вывод после получения INTR, QUIT или SUSP
min=число
Минимально необходимое число символов для ввода необработанных данных
time=число
Значение таймаута для необработанных входных данных
{+|-}tostop
Посылать SIGTTOU для фонового вывода.
+nl
Аналогично +icrnl
-nl
Аналогично -icrnl, -inlcr, -igncr
+sane
Изменять все параметры на приемлемые значения в зависимости от текущего режима (правка/необработанные данные)
+fix
Аналогично +sane
+edit
Изменять значения параметров на системные значения по умолчанию для режима правки
+flush
Сбросить все входные и выходные данные, ожидающие обработки
+raw
Изменять значения параметров на системные значения по умолчанию для режима необработанных данных

Параметры обработки выходных данных

{+|-}opost
Постобработка выходных данных

Специальные управляющие символы

eof=значение
Символ конца файла
eol=значение
Символ конца строки
erase=значение
Символ удаления предыдущего символа
kill=значение
Символ удаления всей строки
intr=значение
Символ создания SIGINT
quit=значение
Символ создания SIGQUIT
susp=значение
Символ создания SIGTSTP
stop=значение
Остановить вывод
start=значение
Возобновить вывод
+ek
Изменить параметры ERASE и KILL на системные значения по умолчанию

Расширенные последовательности символов для правки строк

Помимо стандартных функций "erase" и "kill", ЗОСРВ «Нейтрино» поддерживает другие многосимвольные последовательности, обеспечивающие дополнительные возможности правки. Все такие последовательности должны состоять из префикса длиной до 4-х символов, односимвольного действия и суффикса длиной до 4-х символов. Как правило, для этих функций используются клавиши управления курсором на терминале.

+load
Задать клавиши правки на основе текущего установленного типа терминала
term=имя
Задать клавиши правки для указанного типа терминала
pr1=значение
Первый символ префикса
pr2=значение
Второй символ префикса
pr3=значение
Третий символ префикса
pr4=значение
Четвертый символ префикса
sf1=значение
Первый символ суффикса
sf2=значение
Второй символ суффикса
sf3=значение
Третий символ суффикса
sf4=значение
Четвертый символ суффикса

Символы действий

Ниже перечислены символы действий при наличии префиксов (следующие за ними суффиксы не указаны).

up=значение
Извлечь предыдущую строку
down=значение
Извлечь следующую строку
left=значение
Переместить курсор влево
right=значение
Переместить курсор вправо
ins=значение
Переключить режим вставки
del=значение
Символ удаления текущего символа
rub=значение
Символ удаления предыдущего символа
can=значение
Символ удаления всей строки
home=значение
Переместить курсор к началу строки
end=значение
Переместить курсор к концу строки

Примеры:

Просмотр настроек терминала, к которому подключена утилита stty:

stty

Просмотр настроек указанного устройства:

stty < /dev/ser1

Изменение скорости передачи в бодах для указанного устройства:

stty baud=1200 < /dev/ser1

Перевод терминала в фиксированное приемлемое состояние:

stty +sane

Установка значения для клавиш правки согласно стандарту VT100:

stty term=vt100

Восстановление параметров настройки из переменной командного интерпретатора:

stty $saveterm

Возвращаемое значение:

0
Успешно.
>0
Возникла ошибка.

Предостережения:

Утилита stty воспринимает все описанные опции, однако некоторые из них могут не поддерживаться текущими средствами управления.

Классификация:

Базовые подсистемы ЗОСРВ «Нейтрино», POSIX

Тематические ссылки:

tty




Предыдущий раздел: Утилиты