轉自:http://blog.sina.com.cn/s/blog_7556be720100ryp2.html
Ctrl+p重複上一次命令
Ctrl+a跳到第一個字元前
Ctrl+x同上但再按一次會從新回到原位置
Ctrl+b前移一個字元不刪除字元情況下
Ctrl+h刪除前一個字元
Ctrl+u刪除提示符前的所有字元
Ctrl+w同上
Ctrl+d刪除提示符後一個字元或exit或logout
Ctrl+e轉到字元尾部
Ctrl+f後移一個字元
Ctrl+k刪除提示符後全部字元
Ctrl+k取消
ctrl+r向前尋找用過的命令
Ctrl+o Ctrl+y Ctrl+i Crtl+m這4個沒搞清楚怎麼用
<TAB> 命令補齊
CTRL-I 等同於按定位字元<TAB>鍵
CTRL-W 不是刪除游標前的所有字元, 它刪除游標前的一個單詞
CTRL-P 是recall出上一個命令 <===> CTRL-N是recall出下一個命令
ESC-F 游標向前步進一個單詞
ESC-B 游標向後步進一個單詞
CTRL-M 等同於斷行符號鍵
CTRL-O 等同於斷行符號鍵
CTRL-V 使下一個特殊字元可以插入在當前位置, 如CTRL-V<TAB>可以在當前位置插入一個<TAB>字元, 其ASCII是9,否則一般情況下按<TAB>結果是命令補齊
CTRL-C 撤消當前命令列的編輯, 另起一行.
CTRL-S 暫時凍結當前shell的輸入
CTRL-Q 解凍
ESC-c 使下一個單字首大寫, 同時游標前進一個單詞, 如游標停留在單詞的某個字母上, 如word中的o字母上,則o字母變大寫. 而不是w
ESC-u 使下一個單詞所有字母變大寫, 同時游標前進一個單詞, 同上, 如游標在o字母上, 則ord變大寫, w不變.
ESC-l 同ESC-U, 但使之全變為小寫.
把bash所有的ctrl按鍵組合試了一遍,現總結如下(以下出現的所有鍵都是ctrl按鍵組合):
1. U K Y
U將游標(不包括)以前的字元刪除
K將游標(包括)以後的字元刪除
Y將剛才刪除的字元粘出來
2. D H
D將游標處的字元刪除
H將游標前的一個字元刪除
3. A E
A將游標移動到行首
E將游標移動到行尾
4. F B
F將游標向右移動一個字元的位置
B將游標向左移動一個字元的位置
5. N P
N下一個命令
P上一個命令
6. L
L清屏
7. R
R搜尋以前輸入過的命令
8. T
T將游標處的字元和游標前一個字元替換位置
基本功:
用上下鍵看命令的曆史
左右鍵區修改內容
tab補齊命令名字或者目錄,檔案名稱字,不是唯一的多按2次,會出來列表
!ls 重複運行最後一條以’ls’開頭的命令,如果先ls -l 然後ls -lcrt,那麼!ls,相當於ls -lcrt
ls abc.txt
vi !$
第二行的vi !$相當於vi abc.txt,!$等於上一個命令的參數, ‘$’ 是根據上下文來說的最後一行,列等。
ctrl鍵組合
ctrl+a:游標移到行首。
ctrl+b:游標左移一個字母
ctrl+c:殺死當前進程。
ctrl+d:退出當前 Shell。
ctrl+e:游標移到行尾。
ctrl+h:刪除游標前一個字元,同 backspace 鍵相同。
ctrl+k:清除游標後至行尾的內容。
ctrl+l:清屏,相當於clear。
ctrl+r:搜尋之前打過的命令。會有一個提示,根據你輸入的關鍵字進行搜尋bash的history
ctrl+u: 清除游標前至行首間的所有內容。
ctrl+w: 移除游標前的一個單詞
ctrl+t: 交換游標位置前的兩個字元
ctrl+y: 粘貼或者恢複上次的刪除
ctrl+d: 刪除游標所在字母;注意和backspace以及ctrl+h的區別,這2個是刪除游標前的字元
ctrl+f: 游標右移
ctrl+z : 把當前進程轉到後台運行,使用’ fg ‘命令恢複。比如top -d1 然後ctrl+z,到後台,然後fg,重新恢複
esc組合
esc+d: 刪除游標後的一個詞
esc+f: 往右跳一個詞
esc+b: 往左跳一個詞
esc+t: 交換游標位置前的兩個單詞。