轉:linux/unix命令列終端的游標及字元控制快速鍵

來源:互聯網
上載者:User

標籤:http   io   ar   os   使用   sp   for   檔案   on   

from:http://linux.chinaunix.net/techdoc/system/2007/11/23/973027.shtml
在使用linux/unix的命令列終端時,有時候會碰到鍵盤的退格鍵、刪除鍵、Home鍵、方向鍵等不聽使喚的現象:
    按Backspace鍵,可能冒出來個^?
    按Delete鍵,卻出來個^[[3~
    按Home鍵,卻出來個^[[1~
    按向左方向鍵,卻出來個^[[D
    ……   
以下是在大多數shell終端都可以使用的快速鍵,可以解決上述游標及字元刪除等控制功能。
── 曾嘗試使用stty解決Home鍵等問題,未果(可參考:http://www.ifpubs.com/books/aix52/stty0.htm)
註:如果使用圖形環境的偽終端(如gnome-terminal),以下有可能和視窗程序的一部分快速鍵產生衝突。
****************************************************************************************************
常用的快速鍵:
Ctrl + d        刪除一個字元,相當於通常的Delete鍵(命令列若無任何字元,則相當於exit;處理多行標準輸入時也表示eof)
Ctrl + h        退格刪除一個字元,相當於通常的Backspace鍵
Ctrl + u        刪除游標之前到行首的字元
Ctrl + k        刪除游標之前到行尾的字元
Ctrl + c        取消當前行輸入的命令,相當於Ctrl + Break
Ctrl + a        游標移動到行首(Ahead of line),相當於通常的Home鍵
Ctrl + e        游標移動到行尾(End of line)
Ctrl + f        游標向前(Forward)移動一個字元位置
Ctrl + b        游標往回(Backward)移動一個字元位置
Ctrl + l        清屏,相當於執行clear命令
Ctrl + p        調出命令曆史中的前一條(Previous)命令,相當於通常的上箭頭
Ctrl + n        調出命令曆史中的下一條(Next)命令,相當於通常的上箭頭
Ctrl + r        顯示:號提示,根據使用者輸入尋找相關曆史命令(reverse-i-search)
****************************************************************************************************
次常用快速鍵:
Alt + f         游標向前(Forward)移動到下一個單詞
Alt + b         游標往回(Backward)移動到前一個單詞
Ctrl + w        刪除從游標位置前到當前所處單詞(Word)的開頭
Alt + d         刪除從游標位置到當前所處單詞的末尾
Ctrl + y        粘貼最後一次被刪除的單詞
****************************************************************************************************
附錄:  stty命令參考        來源:http://www.ifpubs.com/books/aix52/stty0.htm
命令參考大全,卷 5,s - u
stty 命令
用途
設定、複位和報告工作站巨集指令引數。
文法
stty [ -a ] [ -g ] [ Options ]
描述
stty 命令對當前為標準輸入的裝置設定某些 I/O 選項。該命令將輸出寫到當前為標準輸出的裝置中。
這個作業系統的版本使用標準 《X/Open 可移植性指南,發行版 4》 介面來控制終端,保持與 POSIX 和 BSD 介面的相容性。stty 命令支援 POSIX 和 BSD 的適應選項,但強烈推薦使用 POSIX 選項。同樣提供廢棄的 BSD 選項列表(帶有對應的 POSIX 選項)。
輸入以下命令時,可以將 tty 裝置的標準輸入重新導向:
stty -a  l, L  w, W  
b, B  m, M  x, X  
c, C  n, N  y, Y  
d, D  o, O  z, Z  
e, E  p, P  [  
f, F  q, Q  \  
g, G  r, R  ]  
h, H  s, S  ^  
i, I  t, T  _  
j, J  u, U  ?  
k, K  v, V  @  
組合模式   
cooked 請參閱 -raw 選項。
ek 分別將 ERASE 和 KILL 字元設定為 Ctrl-H 和 Ctrl-U 按鍵順序。
evenp 啟用 parenb 和 cs7。
-evenp 禁用 parenb 並設定 cs8。
lcase, LCASE 設定 xcase,iuclc 和 olcuc。在工作站只以大寫字元使用。
-lcase, -LCASE 設定 -xcase、-iuclc 和 -olcuc。
nl 設定 -icrnl 和 -onlcr。
-nl 設定 icrnl、 onlcr、-inlcr、-igncr、-ocrnl 和 -onlret。
oddp 啟用 parenb、 cs7 和 parodd。
-oddp 禁用 parenb 並設定 cs8。
parity 請參閱 evenp 選項。
-parity 請參閱 -evenp 選項。
sane 將參數重新設定為合理的值。
raw 允許原始模式輸入(不包括輸入處理,例如 erase、kill 或 interrupt);傳回奇偶(校正)位。
-raw 允許規範輸入方式。
tabs 保留定位字元。
-tabs, tab3 列印時將定位字元替換為空白格。
視窗大小   
cols n, columns n 將終端(視窗)大小記錄為有 n 列。
rows n 將終端(視窗)大小記錄為有 n 行。
size 將終端(視窗)大小列印到標準輸出(先是行,再是列)中。
廢棄選項
stty 命令支援以下 BSD 選項。 對於每個選項,都給出了建議的 POSIX 選項。
all 使用 stty -a 命令顯示所有當前設定。
crt 使用 sane 選項將參數重新設定為合理的值。
crtbs 使用 -echoe 選項。
crterase 使用 echoe 選項。
-crterase 使用 -echoe 選項。
crtkill 使用 echoke 選項。
-crtkill 使用 echok 和 -echoke 選項。
ctlecho 使用 echoctl 選項。
-ctlecho 使用 -echoctl 選項。
decctlq 使用 -ixany 選項。
-decctlq 使用 ixany 選項。
even 使用 evenp 選項。
-even 使用 -evenp 選項。
everything 使用 stty -a 命令顯示所有當前設定。
litout 使用 -opost 選項。
-litout 使用 opost 選項。
odd 使用 oddp 選項。
-odd 使用 -oddp 選項。
pass8 使用 -istrip 選項。
-pass8 使用 istrip 選項。
prterase 使用 echoprt 選項。
speed 使用 stty 命令顯示當前設定。
tandem 使用 ixoff 選項。
-tandem 使用 -ixoff 選項。
樣本
要顯示您的工作站配置的簡短列表,請輸入:
stty這將列出與預設值不同的設定。
要顯示您的工作站配置的完整列表,請輸入:
stty  -a
要啟用按鍵順序來停止列表滾動出螢幕,請輸入:
stty ixon ixany這將設定 ixon 模式,從而可以通過按下 Ctrl-S 按鍵順序來停止列表的滾動。ixany 標誌允許按任意鍵來恢複列表的滾動。正常的工作站配置包含 ixon 和 ixany 標誌,使您可以用 Ctrl-S 按鍵順序停止列表的滾動,而只有 Ctrl-Q 按鍵順序才能使列表重新滾動。
要重新設定搞亂的配置,請輸入:
Ctrl-J stty  sane Ctrl-J
在命令前後按 Ctrl-J 按鍵順序,而不是按 Enter 鍵。當控制 Enter 鍵處理的參數搞亂時,系統通常能識別 Ctrl-J 按鍵順序。
有時螢幕上顯示的資訊可能看上去很奇怪,或當您按 Enter 鍵時系統不反應。當您使用 stty 命令,而它帶有不相容的參數或參數的操作難以理解時,可能會發生這種情況。當面向螢幕的應用程式異常結束並且無法複位工作站配置時,也可能發生這種情況。
輸入 stty sane 命令設定合理的配置,但它可能與您的正常配置略有不同。
要儲存和恢複終端的配置:
OLDCONFIG=`stty -g`          # save configuration
stty -echo                   # do not display password
echo "Enter password: \c"
read PASSWD                  # get the password
stty $OLDCONFIG              # restore configuration該命令儲存工作站的配置、關閉回送訊號、讀取密碼並恢複原始配置。
輸入 stty - echo 命令關閉回送訊號,這意味著當您在鍵盤上輸入密碼時,密碼並不出現在螢幕上。此操作與 echo 命令(該命令在螢幕上顯示訊息)毫無關係。
檔案
/usr/bin/stty 包含 stty 命令。
相關資訊
terminfo 檔案、tty 特殊檔案 termios.h 標頭檔。
AIX 5L Version 5.2 General Programming Concepts: Writing and Debugging Programs 中的 TTY Subsystem Overview。
在 AIX 5L Version 5.2 General Programming Concepts: Writing and Debugging Programs 中的 ldterm Line Discipline。
AIX 5L Version 5.2 National Language Support Guide and Reference 中的 National Language Support。

轉:linux/unix命令列終端的游標及字元控制快速鍵

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.