引き数無しで実行された場合、
stty
は転送レート (baud rate)、ライン制御番号
(line discipline number: サポートされているシステムの場合)、
および `stty sane' の設定から変更された行設定 (line settings) を表示する。
デフォルトでは、
モードの取得と設定は標準入力に接続されている端末に対して行われる
(しかし --file も見よ)。
stty
は以下をオプション以外の引き数とみなし、対応する端末制御を変更する。
機能の前の
[ - ]
は、
` - '
を前置することによってその機能を無効にできることを意味している。
一部の引き数は POSIX 準拠でない拡張機能を利用しているので、
すべてのシステムで有効とは限らない。このような引き数には `(np)'
という印を付けてある。
コントロールの設定
[-]parenb
出力にパリティビット (parity bit) を付加し、
入力にもパリティビットがあるものとする。
[-]parodd
奇数パリティに設定する (- がつくと偶数)。
cs5 cs6 cs7 cs8
文字のサイズをそれぞれ 5, 6, 7, 8 ビットに設定する。
[-]hupcl [-]hup
tty の最後のプロセスが終了したら hangup シグナルを送る。
[-]cstopb
文字あたり二つのストップビットを用いる (`-' がつくと一つ)。
[-]cread
入力の受信を許可する。
[-]clocal
モデムのコントロール信号を無効にする。
[-]crtscts (np)
RTS/CTS によるハンドシェークを有効にする。
入力の設定
[-]ignbrk
ブレーク (break) 文字を無視する。
[-]brkint
ブレークによって割り込みシグナルを発生する。
[-]ignpar
パリティエラーの起こった文字を無視する。
[-]parmrk
パリティエラーをマークする (255-0 の文字配列を用いる)。
[-]inpck
入力のパリティチェック機能を有効にする。
[-]istrip
入力文字の高位ビット (8 番目のビット) をクリアする。
[-]inlcr
改行 (newline) 文字を復帰 (carriage return) 文字に変換する。
[-]igncr
復帰文字を無視する
[-]icrnl
復帰文字を改行文字に変換する
[-]ixon
XON/XOFF によるフローコントロールを有効にする。
[-]ixoff [-]tandem
システムの入力バッファが一杯になりかけたとき stop 文字を送り、
再び空になりかけたときに start 文字を送る機能を有効にする。
[-]iuclc (np)
大文字を小文字に変換する。
[-]ixany (np)
どの文字でも出力を再開できるようにする
(`-ixany' で start 文字のみになる)
[-]imaxbel (np)
入力バッファが一杯なのに文字が入力されたときには、
ビープ音を発生して入力バッファをフラッシュしないようにする。
出力の設定
[-]opost
プロセス終了後に出力。
[-]olcuc (np)
小文字を大文字に変換。
[-]ocrnl (np)
復帰文字 (carriage return) を改行 (newline) 文字に変換。
[-]onlcr (np)
改行を復帰+改行に変換。
[-]onocr (np)
最初の桁の改行文字を出力しない。
[-]onlret (np)
改行文字によって復帰動作を行う。
[-]ofill (np)
遅延のタイミング動作に fill (文字埋め) 文字を用いる。
[-]ofdel (np)
fill 動作にヌル文字でなく delete 文字を用いる。
nl1 nl0 (np)
改行の遅延形式。
cr3 cr2 cr1 cr0 (np)
復帰の遅延形式。
tab3 tab2 tab1 tab0 (np)
水平タブの遅延形式。
bs1 bs0 (np)
バックスペースの遅延形式。
vt1 vt0 (np)
垂直タブの遅延形式。
ff1 ff0 (np)
改ページ (form feed) の遅延形式。
ローカルな設定
[-]isig
interrupt, quit, suspend 各特殊文字を有効にする。
[-]icanon
erase, kill, werase, rprnt 各特殊文字を有効にする。
[-]iexten
POSIX 準拠でない特殊文字を有効にする。
[-]echo
入力文字をエコーする。
[-]echoe, [-]crterase
erase 文字をバックスペース+空白+バックスペースとしてエコーする。
[-]echok
kill 文字の後に newline 文字をエコーする。
[-]echonl
他の文字がエコーされない場合でも newline だけをエコーする。
[-]noflsh
interrupt および quit 特殊文字の後にフラッシュを行わない。
[-]xcase (np)
icanon が設定されている場合、
入出力の大文字を対応する小文字に `\' を前置して表示可能にする。
[-]tostop (np)
端末に出力しようとしたバックグラウンドジョブを停止する。
[-]echoprt [-]prterase (np)
消去された文字を '\' と `/' に挟んで後方にエコーする。
[-]echoctl [-]ctlecho (np)
コントロール文字を文字どおりに出力する代わりに
ハット表示 (`^c') する。
[-]echoke [-]crtkill (np)
kill 文字のエコーを、(echoctl と echok 設定の代わりに) echoprt と
echoe 設定で指定された方法でラインを消去することによって行う。
設定の組み合わせ
[-]evenp [-]parity
-parodd cs7 と同じ。 `-' が付いた場合は -parenb cs8 と同じ。
[-]oddp
-icrnl -onlcr と同じ。 `-' が付いた場合は
-inlcr -igncr onlcr -ocrnl -onlret と同じ。
[-]nl
-icrnl -onlcr と同じ。 `-' が付いた場合は
-inlcr -igncr onlcr -ocrnl -onlret と同じ。
erase と kill の特殊文字をデフォルトの値に戻す。
sane
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 と同じ。
また同時にすべての特殊文字をデフォルトの値に戻す。
[-]cooked
brkint ignpar istrip icrnl ixon opost isig icanon に加え、
eof と eol 文字が min および time 文字と同じになっている場
合はこれらをデフォルトの値に戻す。 `-' が付いた場合は raw と同じ。
[-]raw
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr
-igncr -icrnl -ixon -ixoff -iuclc -ixany -imaxbel
-opost -isig -icanon -xcase min 1 time 0 と同じ。
`-' が付いた場合は cooked と同じ。
[-]cbreak
-icanon と同じ。
[-]pass8
-parenb -istrip cs8 と同じ。
`-' が付いた場合は parenb istrip cs7 と同じ。
[-]litout
-parenb -istrip -opost cs8 と同じ。
`-' が付いた場合は parenb istrip opost cs7 と同じ。
[-]decctlq (np)
-ixany と同じ。
[-]tabs (np)
tab0 と同じ。 `-' が付いた場合は tab3 と同じ。
[-]lcase [-]LCASE (np)
xcase iuclc olcuc と同じ。
crt
echoe echoctl echoke と同じ。
dec
echoe echoctl echoke -ixany に加え、 interrupt 特殊文字を
Ctrl-C に、 erase を Del に、 kill を Ctrl-U に設定する。
特殊文字
特殊文字のデフォルト値はシステムによってまったく異なる。
これらは `name value' といった書式で指定される。
name には以下のリストのどれかを指定する。
value には、文字そのまま、ハット表示 (`^c')、
あるいは数値 (`0x' ではじまる場合は 16 進、`0' は 8 進、その他は 10 進)
による指定ができる。 `^-' または `undef' を value に与えた場合には、
その特殊文字は無効になる。
intr
割り込み (interrupt) シグナルを送る。
quit
終了 (quit) シグナルを送る。
erase
最後にタイプされた文字を消去する。
kill
現在の行を消去する。
eof
ファイル終了 (end of file) を知らせる (入力を終了する)。
eol
行末 (end of the line)。
eol2 (np)
行末を表す別の文字
swtch (np)
別のシェル層 (shell layer) にスイッチする。
start
停止している出力を再開する。
stop
出力を停止する。
susp
端末に停止 (stop) シグナルを送る。
dsusp (np)
入力をフラッシュしてから端末に停止 (stop) シグナルを送る。
rprnt (np)
現在の行を再表示する。
werase (np)
最後にタイプされた単語 (word) を消去する。
lnext (np)
次にタイプされる文字を (特殊文字であっても) そのままの文字
として受け取る。
特殊な設定
-icanon が設定されているとき、
制限時間中で読み込み成功とみなされる文字数の最小値を設定する。
time N
-icanon が設定されているとき、
最小文字数が読み込まれなかった場合に読み込みが時間切れになるまでの時間を
10 秒単位で設定する。
ispeed N
入力の速度を N に設定する。
ospeed N
出力の速度を N に設定する。
rows N (np)
カーネルに端末が N 行であることを伝える。
cols N columns N (np)
カーネルに端末が N 桁であることを伝える。
size (np)
カーネルが保持している端末の行数および桁数を表示する
(行・桁をカーネルでサポートしていないシステムでは、代わりに
LINES
および
COLUMNS
環境変数が良く用いられる。しかし GNU
stty
はこれらを全く参照しない)。
line N (np)
ライン制御番号 (line discipline) の N を用いる。
speed
端末の速度を表示する。
N
入出力の速度を N に設定する。
N は以下の数値のうちのどれか: 0 50 75 110 134 134.5 150 200 300 600 1200
1800 2400 4800 9600 19200 38400 exta extb。
exta は 19200 と同じ。 extb は 38400 と同じ。
0 は -clocal が設定されている場合には回線を切断する。