STTY(1) 使用者命令 STTY(1)

名稱

stty - 更改並輸出終端行設定

概述

stty [-F 裝置 | --file=裝置] [設定]...
stty [-F 裝置 | --file=裝置] [-a|--all]
stty [-F 裝置 | --file=裝置] [-g|--save]

描述

輸出或變更終端特性。

必選引數對長短選項同時適用。

以可讀性較好的格式輸出全部當前設定
以 stty 可讀取的格式輸出當前全部設定
開啟並使用指定裝置代替標準輸入
顯示此幫助資訊並退出
顯示版本資訊並退出

設定字串可以新增 "-" 字首,表示禁用該項設定。下文中的 * 表示這項設定不屬於 POSIX 標準。各項設定是否可用取決於底層的系統。

特殊字元:


* discard 字元
字元將開始或停止丟棄輸出的內容
字元將傳送檔案結束字元(用於終止輸入)
字元將傳送行結束字元
* eol2 字元
另一個行結束字元
字元將擦除上一個輸入的字元
字元將傳送中斷訊號 (SIGINT)
字元將擦除當前行
* lnext 字元
字元將給下一個輸入的字元加上引號
字元將傳送退出訊號 (SIGQUIT)
* rprnt 字元
字元將重新繪製當前行
字元將重新開始先前停止的輸出
字元將停止輸出
字元將傳送終端停止訊號 (SIGTSTP)
* swtch 字元
字元將切換至不同的 shell 層
* werase 字元
字元將擦除上一個輸入的單詞

特殊設定:

設定輸入和輸出速度為 N 波特
* cols N
告知核心此終端有 N 列
* columns N
同 cols N
* [-]drain
應用設定前等待傳輸完成(預設%s)
設定輸入速度為 N
* line N
使用行規則 N
-icanon 同時使用時,設定每次完成讀取需要的最小字元數為 N

設定輸出速度為 N
* rows N
告知核心此終端有 N 列
* size
根據核心提供的資訊,輸出此終端的行數和列數
輸出終端速度
-icanon 同時使用時,設定讀取超時為 N * 0.1 秒

控制設定:

[-]clocal
禁用調變解調器控制訊號
[-]cread
允許接收輸入
* [-]crtscts
啟用 RTS/CTS 握手
將字元大小設定為 N 位元,N 取值在 [5..8] 之間
[-]cstopb
每個字元使用 2 位停止位(若帶 "-",則使用 1 位停止位)
[-]hup
當最後一個程序關閉 tty 時,傳送結束通話訊號 (SIGHUP)
[-]hupcl
同 [-]hup
[-]parenb
在輸出中生成奇偶校驗位,並要求輸入包含奇偶校驗位
[-]parodd
設定奇校驗位(若帶 "-",則設定偶校驗位)
* [-]cmspar
使用 "粘滯" 奇偶校驗位 (mark/space parity)

輸入設定:

[-]brkint
中斷字元會觸發中斷訊號 (SIGINT)
[-]icrnl
將回車轉換為換行符
[-]ignbrk
忽略中斷字元
[-]igncr
忽略回車
[-]ignpar
忽略奇偶校驗錯誤的字元
* [-]imaxbel
當輸入緩衝區已滿時,輸入字元時響鈴,而不排空輸入緩衝區
[-]inlcr
將換行轉換為回車
將換行轉換為回車
對輸入啟用奇偶校驗
[-]istrip
將輸入字元的最高位(第 8 位)置 0
* [-]iutf8
假定輸入字元編碼為 UTF-8
* [-]iuclc
將大寫字元轉換為小寫
* [-]ixany
使任意字元都能重新開始輸出,而非只有 "start 字元" 指定的字元
[-]ixoff
啟用 "start 字元" 和 "stop 字元" 的傳送
[-]ixon
啟用 XON/XOFF 流控制
[-]parmrk
標記奇偶校驗錯誤(使用 255-0-字元 序列)
[-]tandem
同 [-]ixoff

輸出設定:

* bsN
退格延遲風格,N 取值在 [0..1] 之間
* crN
回車延遲風格,N 取值在 [0..3] 之間
* ffN
換頁延遲風格,N 取值在 [0..1] 之間
* nlN
換行延遲風格,N 取值在 [0..1] 之間
* [-]ocrnl
將回車轉換為換行符
* [-]ofdel
使用 DEL 字元而非 NUL 字元作為填充字元
* [-]ofill
使用填充字元而非時間作為延遲
* [-]olcuc
將小寫字元轉換為大寫
* [-]onlcr
將換行轉換為回車-換行
* [-]onlret
換行將執行回車操作
* [-]onocr
不要在第一列輸出回車
[-]opost
對輸出進行後處理
* tabN
水平製表符延遲風格,N 取值在 [0..3] 之間
* tabs
同 tab0
* -tabs
同 tab3
* vtN
垂直製表符延遲風格,N 取值在 [0..1] 之間

本地設定:

[-]crterase
將 "erase 字元" 回顯為退格-空格-退格
* crtkill
依照 echoprt 和 echoe 的設定擦除所有行
* -crtkill
依照 echoctl 和 echok 的設定擦除所有行
* [-]ctlecho
將控制字元按照帽子表示法進行回顯(如 "^c")
[-]echo
對輸入字元進行回顯
* [-]echoctl
同 [-]ctlecho
[-]echoe
同 [-]crterase
[-]echok
在 "kill 字元" 後回顯換行
* [-]echoke
同 [-]crtkill
[-]echonl
即使沒有回顯其他字元,也回顯換行
* [-]echoprt
反向回顯被擦除的字元,並置於 '\' 和 "/" 之間
* [-]extproc
啟用 "行模式" (LINEMODE);在高延遲連線下有用
* [-]flusho
丟棄輸出
[-]icanon
啟用特殊字元:erase, kill, werase, rprnt
[-]iexten
啟用非 POSIX 特殊字元
[-]isig
啟用特殊字元中的 intr、quit 和 susp 字元
[-]noflsh
在收到 intr 和 quit 特殊字元後禁止排空緩衝區
* [-]prterase
同 [-]echoprt
* [-]tostop
停止試圖寫入終端的後臺任務
* [-]xcase
和 icanon 同時使用時,支援用 '\' 轉義序列表示大寫字元

組合設定:

* [-]LCASE
同 [-]lcase
-icanon
-cbreak
同 icanon
同 brkint ignpar istrip icrnl ixon opost isig icanon 且將 eof 和 eol 字元設為預設值
-cooked
同 raw
同 echoe echoctl echoke
同 echoe echoctl echoke -ixany intr ^c erase 0177 kill ^u
* [-]decctlq
同 [-]ixany
將 erase 和 kill 字元設為預設值
同 parenb -parodd cs7
-evenp
-parenb cs8
* [-]lcase
同 xcase iuclc olcuc
-parenb -istrip -opost cs8
同 parenb istrip opost cs7
-icrnl -onlcr
-nl
同 icrnl -inlcr -igncr onlcr -ocrnl -onlret
同 parenb parodd cs7
-oddp
-parenb cs8
[-]parity
同 [-]evenp
-parenb -istrip cs8
-pass8
同 parenb istrip cs7
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl -ixon -ixoff -icanon -opost -isig -iuclc -ixany -imaxbel -xcase min 1 time 0
-raw
同 cooked
同 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,並將所有特殊字元都設為預設值

處理連線到標準輸入的 tty 行設定。不帶引數時,程式會輸出波特率、行規則以及與標準 stty 設定不同的設定。在設定中,字元可以直接輸入,或者使用形如 ^c、0x37、0177 或 127 的格式進行表示;可使用特殊值 ^- 或 undef 禁用特殊字元。

作者

由 David MacKenzie 編寫。

報告錯誤

GNU coreutils 的線上幫助: https://www.gnu.org/software/coreutils/
請向 https://translationproject.org/team/zh_CN.html 報告翻譯錯誤。

版權

Copyright © 2022 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later https://gnu.org/licenses/gpl.html.
本軟體是自由軟體:您可以自由修改和重新發布它。在法律允許的範圍內,不提供任何保證。

參見

完整文件請見: https://www.gnu.org/software/coreutils/stty
或者在本地使用: info '(coreutils) stty invocation'

本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh

2022年9月 GNU coreutils 9.1