有時候,我們需要在 Bash 中重復(fù)執(zhí)行先前的命令。你當(dāng)然可以使用上方向鍵來查看之前曾經(jīng)運行過的命令。但這里有一些更好的方式,例如,數(shù)量掌握以下的快捷鍵。
1) !!:重復(fù)執(zhí)行上一條指令
2) !a:重復(fù)執(zhí)行上一條以a為首的指令
3) !number:重復(fù)執(zhí)行上一條在history表中記錄號碼為number的指令
4) !-number:重復(fù)執(zhí)行前第number條指令
5) !$:表示獲得上一條命令中的最后一項內(nèi)容
6) 用Ctrl + r 組合鍵來進(jìn)入歷史搜索模式在history表中查詢某條過往指令,找到需要重復(fù)執(zhí)行的命令后,按回車鍵即可重復(fù)命令參數(shù)(即上一點中的第5條)
Ctrl+p重復(fù)上一次命令
Ctrl+a跳到第一個字符前
Ctrl+x同上但再按一次會從新回到原位置
Ctrl+b前移一個字符不刪除字符情況下
Ctrl+h刪除前一個字符
Ctrl+u刪除提示符前的所有字符
Ctrl+w同上
Ctrl+d刪除提示符后一個字符或exit或logout
Ctrl+e轉(zhuǎn)到字符尾部
Ctrl+f后移一個字符
Ctrl+k刪除提示符后全部字符
Ctrl+k取消
ctrl+r向前查找用過的命令
Ctrl+o Ctrl+y Ctrl+i Crtl+m這4個沒搞清楚怎么用
<TAB> 命令補(bǔ)齊
CTRL-I 等同于按制表符<TAB>鍵
CTRL-W 不是刪除光標(biāo)前的所有字符, 它刪除光標(biāo)前的一個單詞
CTRL-P 是recall出上一個命令 <===> CTRL-N 是recall出下一個命令
ESC-F 光標(biāo)向前步進(jìn)一個單詞
ESC-B 光標(biāo)向后步進(jìn)一個單詞
CTRL-M 等同于回車鍵
CTRL-O 等同于回車鍵
CTRL-V 使下一個特殊字符可以插入在當(dāng)前位置, 如CTRL-V <TAB> 可以在當(dāng)前位置插入一個<TAB>字符, 其ASCII是9, 否則一般情況下按<TAB>結(jié)果是命令補(bǔ)齊
CTRL-C 撤消當(dāng)前命令行的編輯, 另起一行.
CTRL-S 暫時凍結(jié)當(dāng)前shell的輸入
CTRL-Q 解凍
ESC-c 使下一個單詞首字母大寫, 同時光標(biāo)前進(jìn)一個單詞, 如光標(biāo)停留在單詞的某個字母上, 如word中的o字母上, 則o字母變大寫.
而不是w
ESC-u 使下一個單詞所有字母變大寫, 同時光標(biāo)前進(jìn)一個單詞, 同上, 如光標(biāo)在o字母上, 則ord變大寫, w不變.
ESC-l 同ESC-U, 但使之全變?yōu)樾?
把bash所有的ctrl組合鍵試了一遍,現(xiàn)總結(jié)如下(以下出現(xiàn)的所有鍵都是ctrl組合鍵):
1. U K Y
U將光標(biāo)(不包括)以前的字符刪除
K將光標(biāo)(包括)以后的字符刪除
Y將剛才刪除的字符粘出來
2. D H
D將光標(biāo)處的字符刪除
H將光標(biāo)前的一個字符刪除
新聞熱點
疑難解答