stty(1) manual page
Table of Contents
stty - set the options for a terminal
/usr/bin/stty [
-a ] [ -g ]
/usr/bin/stty [ modes ]
/usr/xpg4/bin/stty [ -a | -g ]
/usr/xpg4/bin/stty [ modes ]
SUNWcsu
SUNWxcu4
The stty command sets certain terminal I/O
options for the
device that is the current standard input; without arguments, it reports
the settings of certain options.
In this report, if a character is preceded
by a caret (^), then the value of that option is the corresponding control
character (for example, ‘^h’ is CTRL-H
; in this case, recall that CTRL-H
is
the same as the ‘‘back-space’’ key.) The sequence ‘^´’ means that an option has a
null value.
See termio(7I)
for detailed information about the modes listed
from Control Modes through Local Modes. For detailed information about the
modes listed under Hardware Flow Control Modes and Clock Modes, below,
see termiox(7I)
.
Operands described in the Combination Modes section are
implemented using options in the earlier sections. Note that many combinations
of options make no sense, but no sanity checking is performed. Hardware
flow control and clock modes options may not be supported by all hardware
interfaces.
The following options are supported:
- -a
- Write to standard
output all of the option settings for the terminal.
- -g
- Report current settings
in a form that can be used as an argument to another stty command. Emits
termios-type output if the underlying driver supports it; otherwise, it
emits termio-type output.
The following mode operands are supported:
- parenb (-parenb)
- Enable (disable) parity generation and detection.
- parext (-parext)
- Enable (disable) extended parity generation and detection
for mark and space parity.
- parodd (-parodd)
- Select odd (even) parity, or
mark (space) parity if parext is enabled.
- cs5 cs6 cs7 cs8
- Select character
size (see termio(7I)
).
- Hang up line immediately.
110 300 600 1200 1800 2400 4800 9600 19200 38400 357600 76800 115200
153600
- 230400 307200 460800
- Set terminal baud rate to the number given,
if possible. (All speeds are not supported by all hardware interfaces.)
ispeed
0 110 300 600 1200 1800 2400 4800 9600 19200 38400 57600 76800 115200
- 153600 230400 307200 460800
- Set terminal input baud rate to the number
given, if possible. (Not all hardware supports split baud rates.) If the
input baud rate is set to 0, the input baud rate will be specified by the
value of the output baud rate.
ospeed 0 110 300 600 1200 1800 2400 4800 9600 19200 38400 57600 76800
115200
- 153600 230400 307200 460800
- Set terminal output baud rate to the
number given, if possible. (Not all hardware supports split baud rates.)
If the output baud rate is set to 0, the line will be hung up immediately.
- hupcl (-hupcl)
- Hang up (do not hang up) connection on last close.
- hup (-hup)
- Same as hupcl (-hupcl).
- cstopb (-cstopb)
- Use two (one) stop bits per character.
- cread (-cread)
- Enable (disable) the receiver.
- crtscts (-crtscts)
- Enable output
hardware flow control. Raise the RTS
(Request to Send) modem control line.
Suspends output until the CTS
(Clear to Send) line is raised.
- crtsxoff
(-crtsxoff)
- Enable input hardware flow control. Raise the RTS
(Request
to Send) modem control line to receive data. Suspends input when RTS
is low.
- clocal (-clocal)
- Assume a line without (with) modem control.
- loblk
(-loblk)
- Block (do not block) output from a non-current layer.
- defeucw
- Set
the widths of multibyte Extended Unix Code (EUC) characters in struct eucioc
to default values for the current locale specified by LC_CTYPE
; width
is expressed in terms of bytes per character, and screen or display columns
per character (see getwidth(3I)
and ldterm(7M)
).
- ignbrk (-ignbrk)
- Ignore (do not ignore) break on input.
- brkint (-brkint)
- Signal (do not signal)
INTR
on break.
- ignpar (-ignpar)
- Ignore (do not ignore) parity errors.
- parmrk
(-parmrk)
- Mark (do not mark) parity errors (see termio(7I)
).
- inpck (-inpck)
- Enable (disable) input parity checking.
- istrip (-istrip)
- Strip (do not strip)
input characters to seven bits.
- inlcr (-inlcr)
- Map (do not map) NL
to CR
on input.
- igncr (-igncr)
- Ignore (do not ignore) CR
on input.
- icrnl (-icrnl)
- Map (do not map) CR
to NL
on input.
- iuclc (-iuclc)
- Map (do not map) upper-case
alphabetics to lower case on input.
- ixon (-ixon)
- Enable (disable) START/STOP
output control. Output is stopped by sending STOP
control character and
started by sending the START
control character.
- ixany (-ixany)
- Allow any
character (only DC1
) to restart output.
- ixoff (-ixoff)
- Request that the system
send (not send) START/STOP
characters when the input queue is nearly empty/full.
- imaxbel (-imaxbel)
- Echo (do not echo) BEL
when the input line is too long.
- opost (-opost)
- Post-process output (do not post-process output;
ignore all other output modes).
- olcuc (-olcuc)
- Map (do not map) lower-case
alphabetics to upper case on output.
- onlcr (-onlcr)
- Map (do not map) NL
to
CR-NL
on output.
- ocrnl (-ocrnl)
- Map (do not map) CR
to NL
on output.
- onocr
(-onocr)
- Do not (do) output CR
s at column zero.
- onlret (-onlret)
- On the terminal
NL
performs (does not perform) the CR
function.
- ofill (-ofill)
- Use fill characters
(use timing) for delays.
- ofdel (-ofdel)
- Fill characters are DEL
s (NUL
s).
- cr0
cr1 cr2 cr3
- Select style of delay for carriage returns (see termio(7I)
).
- nl0 nl1
- Select style of delay for line-feeds (see termio(7I)
).
- tab0 tab1
tab2 tab3
- Select style of delay for horizontal tabs (see termio(7I)
).
- bs0
bs1
- Select style of delay for backspaces (see termio(7I)
).
- ff0 ff1
- Select
style of delay for form-feeds (see termio(7I)
).
- vt0 vt1
- Select style of delay
for vertical tabs (see termio(7I)
).
- isig (-isig)
- Enable (disable)
the checking of characters against the special control characters INTR
,
QUIT
, SWTCH
, and SUSP
.
- icanon (-icanon)
- Enable (disable) canonical input
(ERASE
and KILL
processing). Does not set MIN
or TIME.
- xcase (-xcase)
- Canonical
(unprocessed) upper/lower-case presentation.
- echo (-echo)
- Echo back (do not
echo back) every character typed.
- echoe (-echoe)
- Echo (do not echo) ERASE
character as a backspace-space-backspace string. Note: This mode will erase
the ERASE
ed character on many CRT
terminals; however, it does not keep
track of column position and, as a result, it may be confusing for escaped
characters, tabs, and backspaces.
- echok (-echok)
- Echo (do not echo) NL
after
KILL
character.
- lfkc (-lfkc)
- The same as echok (-echok); obsolete.
- echonl (-echonl)
- Echo (do not echo) NL
.
- noflsh (-noflsh)
- Disable (enable) flush after INTR
,
QUIT
, or SUSP
.
- stwrap (-stwrap)
- Disable (enable) truncation of lines longer
than 79 characters on a synchronous line.
- tostop (-tostop)
- Send (do not send)
SIGTTOU
when background processes write to the terminal.
- echoctl (-echoctl)
- Echo (do not echo) control characters as ^char, delete as ^?.
- echoprt (-echoprt)
- Echo (do not echo) erase character as character is ‘‘erased’’.
- echoke (-echoke)
- BS-SP-BS erase (do not BS-SP-BS erase) entire line on line kill.
- flusho (-flusho)
- Output is (is not) being flushed.
- pendin (-pendin)
- Retype (do not retype)
pending input at next read or input character.
- iexten (-iexten)
- Enable (disable)
special control characters not currently controlled by icanon, isig,
ixon, or ixoff: VEOLZ
, VSWTCH
, VREPRINT
, VDISCARD
, VDSUSP
, VWERASE
,
VLNEXT
.
- stflush (-stflush)
- Enable (disable) flush on a synchronous line
after every write(2)
.
- stappl (-stappl)
- Use application mode (use line mode)
on a synchronous line.
- rtsxoff (-rtsxoff)
- Enable
(disable) RTS
hardware flow control on input.
- ctsxon (-ctsxon)
- Enable (disable)
CTS
hardware flow control on output.
- dtrxoff (-dtrxoff)
- Enable (disable)
DTR
hardware flow control on input.
- cdxon (-cdxon)
- Enable (disable) CD
hardware
flow control on output.
- isxoff (-isxoff)
- Enable (disable) isochronous hardware
flow control on input.
- xcibrg
- Get transmit clock from internal
baud rate generator.
- xctset
- Get the transmit clock from transmitter signal
element timing (DCE
source) lead, CCITT
V.24 circuit 114, EIA
-232-D pin 15.
- xcrset
- Get transmit clock from receiver signal element timing (DCE
source)
lead, CCITT
V.24 circuit 115, EIA
-232-D pin 17.
- rcibrg
- Get receive clock from
internal baud rate generator.
- rctset
- Get receive clock from transmitter
signal element timing (DCE
source) lead, CCITT
V.24 circuit 114, EIA
-232-D
pin 15.
- rcrset
- Get receive clock from receiver signal element timing (DCE
source) lead, CCITT
V.24 circuit 115, EIA
-232-D pin 17.
- tsetcoff
- Transmitter
signal element timing clock not provided.
- tsetcrbrg
- Output receive baud rate generator on transmitter signal element
timing (DTE source) lead, CCITT
V.24 circuit 113, EIA
-232-D pin 24.
- tsetctbrg
- Output transmit baud rate generator on transmitter signal element timing
(DTE source) lead, CCITT
V.24 circuit 113, EIA
-232-D pin 24.
- tsetctset
- Output
tranmitter signal element timing (DCE
source) on transmitter signal element
timing (DTE source) lead, CCITT
V.24 circuit 113, EIA
-232-D pin 24.
- tsetcrset
- Output receiver signal element timing (DCE
source) on transmitter signal
element timing (DTE source) lead, CCITT
V.24 circuit 113, EIA
-232-D pin 24.
- rsetcoff
- Receiver signal element timing clock not provided.
- rsetcrbrg
- Output
receive baud rate generator on receiver signal element timing (DTE source)
lead, CCITT
V.24 circuit 128, no EIA
-232-D pin.
- rsetctbrg
- Output transmit baud
rate generator on receiver signal element timing (DTE source) lead, CCITT
V.24 circuit 128, no EIA
-232-D pin.
- rsetctset
- Output transmitter signal element
timing (DCE
source) on receiver signal element timing (DTE source) lead,
CCITT
V.24 circuit 128, no EIA
-232-D pin.
- rsetcrset
- Output receiver signal
element timing (DCE
source) on receiver signal element timing (DTE source)
lead, CCITT
V.24 circuit 128, no EIA
-232-D pin.
- control-character
c
- Set control-character to c, where:
- control-character
- is ctab, discard,
dsusp, eof, eol, eol2, erase, intr, kill, lnext, quit, reprint, start,
stop, susp, swtch, or werase (ctab is used with -stappl, see termio(7I)
).
- c
- If c is a single character, the control character will be set to that
character.
In the POSIX
locale, if c is preceded by a caret (^) indicating
an escape from the shell and is one of those listed in the ^c column of
the following table, then its value used (in the Value column) is the corresponding
control character (for example, ‘‘^d’’ is a CTRL-D
). ‘‘^?’’ is interpreted as DEL
and
‘‘^-’’ is interpreted as undefined.
^c | Value | ^c | Value | ^c | Value |
a, A | <SOH> | l, L | <FF> | w, W | <ETB> |
b,
B | <STX> | m, M | <CR> | x, X | <CAN> |
c, C | <ETX> | n, N | <SO> | y, Y | <EM> |
d, D | <EOT> | o, O | <SI> | z, Z | <SUB> |
e, E | <ENQ> | p, P | <DLE> | [ | <ESC> |
f,
F | <ACK> | q, Q | <DC1> | \ | <FS> |
g, G | <BEL> | r, R | <DC2> | ] | <GS> |
h, H | <BS> | s, S | <DC3> | ^ | <RS> |
i, I | <HT> | t, T | <DC4> | _ | <US> |
j, J | <LF> | u, U | <NAK> | ? | <DEL> |
k,
K | <VT> | v, V | <SYN> |
- min number
- time number
- Set the value of min or time to number. MIN
and
TIME
are used in Non-Canonical mode input processing (-icanon).
- linei
- Set
line discipline to i ( 0< i <127).
- saved settings
- Set the
current terminal characteristics to the saved settings produced by the
-g option.
- evenp or parity
- Enable parenb and cs7, or disable parodd.
- oddp
- Enable parenb, cs7, and parodd.
- spacep
- Enable parenb, cs7, and parext.
- markp
- Enable parenb, cs7, parodd, and parext.
- -parity, or -evenp
- Disable parenb,
and set cs8.
- -oddp
- Disable parenb and parodd, and set cs8.
- -spacep
- Disable
parenb and parext, and set cs8.
- -markp
- Disable parenb, parodd, and parext,
and set cs8.
- raw (-raw or cooked)
- Enable (disable) raw input and output. Raw mode is
equivalent to setting:
stty cs8 -icanon min 1 time 0 -isig -xcase -inpck -opost
- nl (-nl)
- Unset (set) icrnl, onlcr. In addition -nl unsets inlcr,
igncr, ocrnl, and onlret.
- nl (-nl)
- Set (unset) icrnl. In
addition, -nl unsets inlcr, igncr, ocrnl, and onlret; -nl sets onlcr, and
nl unsets onlcr.
- lcase (-lcase)
- Set (unset) xcase, iuclc, and olcuc.
- LCASE
(-LCASE)
- Same as lcase (-lcase).
- tabs (-tabs or tab3)
- Preserve (expand to spaces)
tabs when printing.
- ek
- Reset ERASE
and KILL
characters back to normal #
and @.
- sane
- Resets all modes to some reasonable values.
- term
- Set all modes
suitable for the terminal type term, where term is one of tty33, tty37,
vt05, tn300, ti700, or tek.
- async
- Set normal asynchronous communications
where clock settings are xcibrg, rcibrg, tsetcoff and rsetcoff.
- rows n
- Set window size to n rows.
- columns n
- Set window size
to n columns.
- cols n
- Set window size to n columns. Note that cols is a shorthand
alias for columns.
- ypixels n
- Set vertical window size to n pixels.
- xpixels
n
- Set horizontal window size to n pixels.
The -g flag is designed to
facilitate the saving and restoring of terminal state from the shell level.
For example, a program may:
saveterm="$(stty -g)" # save terminal state
stty (new settings) # set new state
... # ...
stty $saveterm # restore terminal state
Since the -a format is so loosely specified, scripts that save and restore
terminal settings should use the -g option.
See environ(5)
for
descriptions of the following environment variables that affect the execution
of stty: LC_CTYPE
, LC_MESSAGES
, and NLSPATH
.
The following exit
values are returned:
- Successful completion.
- >0
- An error occurred.
tabs(1)
,
ioctl(2)
, write(2)
, getwidth(3I)
, environ(5)
, ldterm(7M)
, termio(7I)
, termiox(7I)
Table of Contents