Unixstty命令詳解-創(chuàng)新互聯(lián)

UNIX系統(tǒng)的命令很多,下面講解stty. 該命令是一個(gè)用來改變并打印終端行設(shè)置的常用命令。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊(cè)、虛擬空間、營銷軟件、網(wǎng)站建設(shè)、開州網(wǎng)站維護(hù)、網(wǎng)站推廣。

1、stty(set tty,設(shè)置tty)命令用于檢查和修改當(dāng)前注冊(cè)的終端的通信參數(shù)。

UNIX系統(tǒng)為鍵盤的輸入和終端的輸出提供了重要的控制手段,可以通過stty命令對(duì)特定終端或通信線路設(shè)置選項(xiàng)。

可以在stty命令中使用-a查看當(dāng)前注冊(cè)終端的設(shè)置情況。

$ stty -a

Speed 9600 baud; line =0;intr= DEL;quit = ^;erase = ^h;kill =^U; eof = ^d;start=^q;stop=^s

-parenb -parodd cs8 -cstopb -hupcl cread -clocal -loblk

-ignbrk brkint ignpar -parmrk -inpck istrip -inlcr -igncr icrnl -iuclc

ixon ixany -ixoff

isig icanon -xcase echo echoe echok -echonl -noflsh

opost -olcuc onlcr -ocrnl -onocr onlret ofill ofdel tab3

需要時(shí),這里顯示的各種選擇都可以重新配置。每種終端選項(xiàng)都有自己的名字(如ixon),其中大多數(shù)要么被設(shè)置要么被清除。在stty中相應(yīng)選項(xiàng)前冠以負(fù)號(hào)(-),該選項(xiàng)被清除(禁止);如果無負(fù)號(hào),該選項(xiàng)被設(shè)置。

當(dāng)希望修改各選擇的值時(shí),應(yīng)在stty命令中正確書寫相應(yīng)選項(xiàng)。如命令

$ stty -ixon

將流控制設(shè)置為OFF,而命令

$ stty ixon

則將其置為ON。在stty命令中可以同時(shí)設(shè)置多個(gè)選項(xiàng):

$ stty ixon 1200

該命令將終端設(shè)置為1200波特,并將流控制置為ON。

當(dāng)選項(xiàng)的列表較長時(shí),應(yīng)當(dāng)小心所做的修改造成會(huì)話的混亂。典型的情況下,終端在設(shè)置不正確時(shí)完全不能工作。經(jīng)常出現(xiàn)的現(xiàn)象是列輸出顯示或用戶的擊鍵不能被shell正確接受。有時(shí)NEWLINE可能只顯示或走一行但不回行,即用戶輸入的NEWLINE符不能被shell正確讀取。建立新注冊(cè)標(biāo)識(shí)的過程通常建立了正確的stty選項(xiàng),在日常使用中很少需要修改。但如果變量TERM的設(shè)置不正確或用戶希望使用新的終端或通信渠道(如局域網(wǎng)),則需要修改stty的選項(xiàng)。

如果你在某個(gè)機(jī)器中注冊(cè)后終端操作正常,但后來因故發(fā)生了混亂,那么最佳的解決方法是先注銷然后再向系統(tǒng)注冊(cè)。因?yàn)樽?cè)時(shí)系統(tǒng)會(huì)重新設(shè)置相應(yīng)選項(xiàng)。還有一種不太嚴(yán)格的解決辦法是:

$ stty sane

命令sane最常出現(xiàn)在大多數(shù)終端的stty選項(xiàng)的集合中。它并不改變通信信道的速率,但當(dāng)終端發(fā)生混亂時(shí),通常能夠產(chǎn)生有益的效果。命令sane可能使全屏幕應(yīng)用程序(如vi)不能正確工作,而且在設(shè)置了選項(xiàng)sane之后,如果不能解決任何問題,就應(yīng)立即注銷,然后再注冊(cè)。如果終端在注冊(cè)后依然不能正確工作,用戶的注冊(cè)可能是不成功的。

如果終端已經(jīng)混亂,NEWLINE鍵不能結(jié)束命令行,可以用CTRL-J代替NEWLINE直到用戶執(zhí)行stty sane。此時(shí),再用CTRL-J終止stty sane,使系統(tǒng)恢復(fù)正常。

stty命令的幾項(xiàng)主要選項(xiàng)功能為:

選項(xiàng)parenb使終端進(jìn)行奇偶校驗(yàn),-parenb則是禁止校驗(yàn);

選項(xiàng)cs5、cs6、cs7和cs8分別將字符大小設(shè)為5、6、7和8比特;

選項(xiàng)300、600、1200、2400、4800、9600和19200設(shè)置波特率;

cstopb和-cstopb分別設(shè)置兩個(gè)或一個(gè)停止位;

tabs使系統(tǒng)使用制表符而不是空格序列,因此減少了輸出量,選項(xiàng)-tabs僅使用空格,當(dāng)終端不能正確處理制表符(tab)時(shí)應(yīng)使用該項(xiàng)。

2、stty還可用于控制一些具有特殊控制功能的鍵。

1)在命令行下,禁止輸出大寫的方法

stty iuclc #開啟

stty -iuclc #恢復(fù)

2)在命令行下禁止輸出小寫

stty olcuc #開啟

stty -olcuc#恢復(fù)

3)打印出終端的行數(shù)和列數(shù)

stty size

4)改變ctrl+D的方法:

系統(tǒng)可能已經(jīng)使用CTRL-D作為文件結(jié)束符,但你可能喜歡使用CTRL-C。

stty eof "string"

如:$ stty eof ^c

按下CTRL-C就顯示為^c. 可以直接輸入控制字符,在其前面冠以反斜線和脫字符( ^)。系統(tǒng)默認(rèn)是ctrl+D來表示文件的結(jié)束, 通過這種方法,可以改變!

5)屏蔽顯示

stty -echo #禁止回顯

stty echo #打開回顯

測試方法:

stty -echo;read;stty echo;read

6)忽略回車符

stty igncr #開啟

stty -igncr#恢復(fù)

7)恢復(fù)使用退格鍵

$ stty erase ^h

注:按下Backspace就出現(xiàn)了^h,

solaris系統(tǒng)默認(rèn)是不支持Backspace,用這個(gè)命令改后就能正常使用了,方便多了。

8) 可以設(shè)置一個(gè)會(huì)話期,使得當(dāng)自己鍵入一個(gè)退格鍵時(shí),系統(tǒng)用退格、刪除和退格序列響應(yīng)。此時(shí)可以看到用退格鍵覆蓋的字符從顯示中消失了,這樣更符合計(jì)算機(jī)的慣例。使用命令

$ stty echo

可使這一特性設(shè)置為ON。

終端方式及其管理是UNIX系統(tǒng)中比較困難的內(nèi)容之一,系統(tǒng)的用戶手冊(cè)中有stty選項(xiàng)的全部清單。在進(jìn)行嘗試之前,應(yīng)當(dāng)查閱手冊(cè),仔細(xì)分析,以免給你的工作帶來麻煩。

oracle視頻教程請(qǐng)關(guān)注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

當(dāng)前標(biāo)題:Unixstty命令詳解-創(chuàng)新互聯(lián)
文章轉(zhuǎn)載:http://muchs.cn/article40/csgsho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、云服務(wù)器、網(wǎng)站維護(hù)、全網(wǎng)營銷推廣、企業(yè)建站、ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)