stty(1) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | AUTHOR | REPORTING BUGS | COPYRIGHT | SEE ALSO | COLOPHON

STTY(1)                       User Commands                      STTY(1)

NAME         top

       stty - change and print terminal line settings

SYNOPSIS         top

       stty [-F DEVICE | --file=DEVICE] [SETTING]...
       stty [-F DEVICE | --file=DEVICE] [-a|--all]
       stty [-F DEVICE | --file=DEVICE] [-g|--save]

DESCRIPTION         top

       Print or change terminal characteristics.

       Mandatory arguments to long options are mandatory for short
       options too.

       -a, --all
              print all current settings in human-readable form

       -g, --save
              print all current settings in a stty-readable form

       -F, --file=DEVICE
              open and use the specified DEVICE instead of stdin

       --help display this help and exit

       --version
              output version information and exit

       Optional - before SETTING indicates negation.  An * marks
       non-POSIX settings.  The underlying system defines which settings
       are available.

   Special characters:
       * discard CHAR
              CHAR will toggle discarding of output

       eof CHAR
              CHAR will send an end of file (terminate the input)

       eol CHAR
              CHAR will end the line

       * eol2 CHAR
              alternate CHAR for ending the line

       erase CHAR
              CHAR will erase the last character typed

       intr CHAR
              CHAR will send an interrupt signal

       kill CHAR
              CHAR will erase the current line

       * lnext CHAR
              CHAR will enter the next character quoted

       quit CHAR
              CHAR will send a quit signal

       * rprnt CHAR
              CHAR will redraw the current line

       start CHAR
              CHAR will restart the output after stopping it

       stop CHAR
              CHAR will stop the output

       susp CHAR
              CHAR will send a terminal stop signal

       * swtch CHAR
              CHAR will switch to a different shell layer

       * werase CHAR
              CHAR will erase the last word typed

   Special settings:
       N      set the input and output speeds to N bauds

       * cols N
              tell the kernel that the terminal has N columns

       * columns N
              same as cols N

       * [-]drain
              wait for transmission before applying settings (on by
              default)

       ispeed N
              set the input speed to N

       * line N
              use line discipline N

       min N  with -icanon, set N characters minimum for a completed
              read

       ospeed N
              set the output speed to N

       * rows N
              tell the kernel that the terminal has N rows

       * size print the number of rows and columns according to the
              kernel

       speed  print the terminal speed

       time N with -icanon, set read timeout of N tenths of a second

   Control settings:
       [-]clocal
              disable modem control signals

       [-]cread
              allow input to be received

       * [-]crtscts
              enable RTS/CTS handshaking

       csN    set character size to N bits, N in [5..8]

       [-]cstopb
              use two stop bits per character (one with '-')

       [-]hup send a hangup signal when the last process closes the tty

       [-]hupcl
              same as [-]hup

       [-]parenb
              generate parity bit in output and expect parity bit in
              input

       [-]parodd
              set odd parity (or even parity with '-')

       * [-]cmspar
              use "stick" (mark/space) parity

   Input settings:
       [-]brkint
              breaks cause an interrupt signal

       [-]icrnl
              translate carriage return to newline

       [-]ignbrk
              ignore break characters

       [-]igncr
              ignore carriage return

       [-]ignpar
              ignore characters with parity errors

       * [-]imaxbel
              beep and do not flush a full input buffer on a character

       [-]inlcr
              translate newline to carriage return

       [-]inpck
              enable input parity checking

       [-]istrip
              clear high (8th) bit of input characters

       * [-]iutf8
              assume input characters are UTF-8 encoded

       * [-]iuclc
              translate uppercase characters to lowercase

       * [-]ixany
              let any character restart output, not only start character

       [-]ixoff
              enable sending of start/stop characters

       [-]ixon
              enable XON/XOFF flow control

       [-]parmrk
              mark parity errors (with a 255-0-character sequence)

       [-]tandem
              same as [-]ixoff

   Output settings:
       * bsN  backspace delay style, N in [0..1]

       * crN  carriage return delay style, N in [0..3]

       * ffN  form feed delay style, N in [0..1]

       * nlN  newline delay style, N in [0..1]

       * [-]ocrnl
              translate carriage return to newline

       * [-]ofdel
              use delete characters for fill instead of NUL characters

       * [-]ofill
              use fill (padding) characters instead of timing for delays

       * [-]olcuc
              translate lowercase characters to uppercase

       * [-]onlcr
              translate newline to carriage return-newline

       * [-]onlret
              newline performs a carriage return

       * [-]onocr
              do not print carriage returns in the first column

       [-]opost
              postprocess output

       * tabN horizontal tab delay style, N in [0..3]

       * tabs same as tab0

       * -tabs
              same as tab3

       * vtN  vertical tab delay style, N in [0..1]

   Local settings:
       [-]crterase
              echo erase characters as backspace-space-backspace

       * crtkill
              kill all line by obeying the echoprt and echoe settings

       * -crtkill
              kill all line by obeying the echoctl and echok settings

       * [-]ctlecho
              echo control characters in hat notation ('^c')

       [-]echo
              echo input characters

       * [-]echoctl
              same as [-]ctlecho

       [-]echoe
              same as [-]crterase

       [-]echok
              echo a newline after a kill character

       * [-]echoke
              same as [-]crtkill

       [-]echonl
              echo newline even if not echoing other characters

       * [-]echoprt
              echo erased characters backward, between '\' and '/'

       * [-]extproc
              enable "LINEMODE"; useful with high latency links

       * [-]flusho
              discard output

       [-]icanon
              enable special characters: erase, kill, werase, rprnt

       [-]iexten
              enable non-POSIX special characters

       [-]isig
              enable interrupt, quit, and suspend special characters

       [-]noflsh
              disable flushing after interrupt and quit special
              characters

       * [-]prterase
              same as [-]echoprt

       * [-]tostop
              stop background jobs that try to write to the terminal

       * [-]xcase
              with icanon, escape with '\' for uppercase characters

   Combination settings:
       * [-]LCASE
              same as [-]lcase

       cbreak same as -icanon

       -cbreak
              same as icanon

       cooked same as brkint ignpar istrip icrnl ixon opost isig icanon,
              eof and eol characters to their default values

       -cooked
              same as raw

       crt    same as echoe echoctl echoke

       dec    same as echoe echoctl echoke -ixany intr ^c erase 0177
              kill ^u

       * [-]decctlq
              same as [-]ixany

       ek     erase and kill characters to their default values

       evenp  same as parenb -parodd cs7

       -evenp same as -parenb cs8

       * [-]lcase
              same as xcase iuclc olcuc

       litout same as -parenb -istrip -opost cs8

       -litout
              same as parenb istrip opost cs7

       nl     same as -icrnl -onlcr

       -nl    same as icrnl -inlcr -igncr onlcr -ocrnl -onlret

       oddp   same as parenb parodd cs7

       -oddp  same as -parenb cs8

       [-]parity
              same as [-]evenp

       pass8  same as -parenb -istrip cs8

       -pass8 same as parenb istrip cs7

       raw    same as -ignbrk -brkint -ignpar -parmrk -inpck -istrip
              -inlcr -igncr -icrnl -ixon -ixoff -icanon -opost -isig
              -iuclc -ixany -imaxbel -xcase min 1 time 0

       -raw   same as cooked

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

       Handle the tty line connected to standard input.  Without
       arguments, prints baud rate, line discipline, and deviations from
       stty sane.  In settings, CHAR is taken literally, or coded as in
       ^c, 0x37, 0177 or 127; special values ^- or undef used to disable
       special characters.

AUTHOR         top

       Written by David MacKenzie.

REPORTING BUGS         top

       GNU coreutils online help:
       <https://www.gnu.org/software/coreutils/>
       Report any translation bugs to
       <https://translationproject.org/team/>

COPYRIGHT         top

       Copyright © 2024 Free Software Foundation, Inc.  License GPLv3+:
       GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
       This is free software: you are free to change and redistribute
       it.  There is NO WARRANTY, to the extent permitted by law.

SEE ALSO         top

       Full documentation <https://www.gnu.org/software/coreutils/stty>
       or available locally via: info '(coreutils) stty invocation'

COLOPHON         top

       This page is part of the coreutils (basic file, shell and text
       manipulation utilities) project.  Information about the project
       can be found at ⟨http://www.gnu.org/software/coreutils/⟩.  If you
       have a bug report for this manual page, see
       ⟨http://www.gnu.org/software/coreutils/⟩.  This page was obtained
       from the tarball coreutils-9.5.tar.xz fetched from
       ⟨http://ftp.gnu.org/gnu/coreutils/⟩ on 2024-06-14.  If you
       discover any rendering problems in this HTML version of the page,
       or you believe there is a better or more up-to-date source for
       the page, or you have corrections or improvements to the
       information in this COLOPHON (which is not part of the original
       manual page), send a mail to man-pages@man7.org

GNU coreutils 9.5              March 2024                        STTY(1)

Pages that refer to this page: setterm(1)tcpdump(1)tput(1)tset(1)ncurses(3x)readline(3)stdin(3)termios(3)dir_colors(5)termcap(5)terminfo(5)termio(7)resizecons(8)tcpdump(8)