stty - change and print terminal line settings


stty [setting...]
stty {-a,--all,-g,--help,--save,--version}


This manual page documents the GNU version of stty . If given no arguments, stty prints the baud rate, line discipline number (on systems that support it), and line settings that have been changed from the values set by `stty sane'. Mode reading and setting are performed on the tty line connected to the standard input.

stty accepts the following non-option arguments that change aspects of the terminal line operation. A `[-]' before a capability means that it can be turned off by preceding it with a `-'. Some arguments are not available on all systems, since they use non-POSIX extensions. Such arguments are marked below with `(np)'.

Control settings:

Generate parity bit in output and expect parity bit in input.

Set odd parity (even with `-').

cs5 cs6 cs7 cs8
Set character size to 5, 6, 7, or 8 bits.

[-]hupcl [-]hup
Send a hangup signal when the last process closes the tty.

Use two stop bits per character (one with `-').

Allow input to be received.

Disable modem control signals.

[-]crtscts (np)
Enable RTS/CTS handshaking.

Input settings:

Ignore breaks.

Breaks cause an interrupt signal.

Ignore parity errors.

Mark parity errors (with a 255-0-character sequence).

Enable input parity checking.

Clear high (8th) bit of input characters.

Translate newline to carriage return.

Ignore carriage return.

Translate carriage return to newline.

Enable XON/XOFF flow control.

[-]ixoff [-]tandem
Enable sending of stop character when the system input buffer is almost full, and start character when it becomes almost empty again.

[-]iuclc (np)
Translate uppercase characters to lowercase.

[-]ixany (np)
Allow any character to restart output (only the start character with `-').

[-]imaxbel (np)
Enable beeping and not flushing input buffer if a character arrives when the input buffer is full.

Output settings:

Postprocess output.

[-]olcuc (np)
Translate lowercase characters to uppercase.

[-]ocrnl (np)
Translate carriage return to newline.

[-]onlcr (np)
Translate newline to carriage return-newline.

[-]onocr (np)
Do not print carriage returns in the first column.

[-]onlret (np)
Newline performs a carriage return.

[-]ofill (np)
Use fill (padding) characters instead of timing for delays.

[-]ofdel (np)
Use delete characters for fill instead of null characters.

nl1 nl0 (np)
Newline delay style.

cr3 cr2 cr1 cr0 (np)
Carriage return delay style.

tab3 tab2 tab1 tab0 (np)
Horizontal tab delay style.

bs1 bs0 (np)
Backspace delay style.

vt1 vt0 (np)
Vertical tab delay style.

ff1 ff0 (np)
Form feed delay style.

Local settings:

Enable interrupt, quit, and suspend special characters.

Enable erase, kill, werase, and rprnt special characters.

Enable non-POSIX special characters.

Echo input characters.

[-]echoe, [-]crterase
Echo erase characters as backspace-space-backspace.

Echo a newline after a kill character.

Echo newline even if not echoing other characters.

Disable flushing after interrupt and quit special characters.

[-]xcase (np)
Enable input and output of uppercase characters by preceding their lowercase equivalents with `\', when icanon is set.

[-]tostop (np)
Stop background jobs that try to write to the terminal.

[-]echoprt [-]prterase (np)
Echo erased characters backward, between `\' and '/'.

[-]echoctl [-]ctlecho (np)
Echo control characters in hat notation (`^c') instead of literally.

[-]echoke [-]crtkill (np)
Echo the kill special character by erasing each character on the line as indicated by the echoprt and echoe settings, instead of by the echoctl and echok settings.

Combination settings:

[-]evenp [-]parity
Same as parenb -parodd cs7. With `-', same as -parenb cs8.

Same as parenb parodd cs7. With `-', same as -parenb cs8.

Same as -icrnl -onlcr. With `-', same as icrnl -inlcr -igncr onlcr -ocrnl -onlret.

Reset the erase and kill special characters to their default values.

Same as cread -ignbrk brkint -inlcr -igncr icrnl -ixoff -iuclc -ixany imaxbel opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke, and also sets all special characters to their default values.

Same as brkint ignpar istrip icrnl ixon opost isig icanon, plus sets the eof and eol characters to their default values if they are the same as the min and time characters. With `-', same as raw.

Same as -ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl -ixon -ixoff -iuclc -ixany -imaxbel -opost -isig -icanon -xcase min 1 time 0. With `-', same as cooked.

Same as -icanon.

Same as -parenb -istrip cs8. With `-', same as parenb istrip cs7.

Same as -parenb -istrip -opost cs8. With `-', same as parenb istrip opost cs7.

[-]decctlq (np)
Same as -ixany.

[-]tabs (np)
Same as tab0. With `-', same as tab3.

[-]lcase [-]LCASE (np)
Same as xcase iuclc olcuc.

Same as echoe echoctl echoke.

Same as echoe echoctl echoke -ixany, and also sets the interrupt special character to Ctrl-C, erase to Del, and kill to Ctrl-U.

Special characters:

The special characters' default values vary from system to system. They are set with the syntax `name value', where the names are listed below and the value can be given either literally, in hat notation (`^c'), or as an integer which may start with `0x' to indicate hexadecimal, `0' to indicate octal, or any other digit to indicate decimal. Giving a value of `^-' or `undef' disables that special character.

Send an interrupt signal.

Send a quit signal.

Erase the last character typed.

Erase the current line.

Send an end of file (terminate the input).

End the line.

eol2 (np)
Alternate character to end the line.

swtch (np)
Switch to a different shell layer.

Restart the output after stopping it.

Stop the output.

Send a terminal stop signal.

dsusp (np)
Send a terminal stop signal after flushing the input.

rprnt (np)
Redraw the current line.

werase (np)
Erase the last word typed.

lnext (np)
Enter the next character typed literally, even if it is a special character.

Special settings:

min N
Set the minimum number of characters that will satisfy a read until the time value has expired, when -icanon is set.

time N
Set the number of tenths of a second before reads time out if the min number of characters have not been read, when -icanon is set.

ispeed N
Set the input speed to N.

ospeed N
Set the output speed to N.

rows N (np)
Tell the kernel that the terminal has N rows.

cols N columns N (np)
Tell the kernel that the terminal has N columns.

size (np)
Print the number of rows and columns that the kernel thinks the terminal has. (Systems that don't support rows and cols in the kernel typically use the environment variables LINES and COLUMNS instead; however, GNU stty does not know anything about them.)

line N (np)
Use line discipline N.

Print the terminal speed.

Set the input and output speeds to N. N can be one of: 0 50 75 110 134 134.5 150 200 300 600 1200 1800 2400 4800 9600 19200 38400 exta extb. exta is the same as 19200; extb is the same as 38400. 0 hangs up the line if -clocal is set.


-a, --all
Print all current settings in human-readable form.

Print a usage message on standard output and exit successfully.

-g, --save
Print all current settings in a form that can be used as an argument to another stty command to restore the current settings.

Print version information on standard output then exit successfully.