Linux下Shell编程快捷键大全(日常整理)
有时候,我们需要在Bash中重复执行先前的命令。你当然可以使用上方向键来查看之前曾经运行过的命令。但这里有一些更好的方式,例如,数量掌握以下的快捷键。
1)!!:重复执行上一条指令
2)!a:重复执行上一条以a为首的指令
3)!number:重复执行上一条在history表中记录号码为number的指令
4)!-number:重复执行前第number条指令
5)!$:表示获得上一条命令中的最后一项内容
6)用Ctrl+r组合键来进入历史搜索模式在history表中查询某条过往指令,找到需要重复执行的命令后,按回车键即可重复命令参数(即上一点中的第5条)
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+oCtrl+yCtrl+iCrtl+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.UKY
U将光标(不包括)以前的字符删除
K将光标(包括)以后的字符删除
Y将刚才删除的字符粘出来
2.DH
D将光标处的字符删除
H将光标前的一个字符删除
3.AE
A将光标移动到行首
E将光标移动到行尾
4.FB
F将光标向右移动一个字符的位置
B将光标向左移动一个字符的位置
5.NP
N下一个命令
P上一个命令
6.L
L清屏
7.R
R搜索以前输入过的命令
8.T
T将光标处的字符和光标前一个字符替换位置
基本功:
用上下键看命令的历史
左右键区修改内容
tab补齐命令名字或者目录,文件名字,不是唯一的多按2次,会出来列表
!ls重复运行最后一条以'ls'开头的命令,如果先ls-l然后ls-lcrt,那么!ls,相当于ls-lcrt
lsabc.txt
vi!$
第二行的vi!$相当于viabc.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:交换光标位置前的两个单词。
以上内容是小编给大家分享的Linux下Shell编程快捷键大全(日常整理),希望对大家有所帮助!