Bash是目前比较主流linux发行版本的shell解释器,今天我们就来说说它的一些快捷操作。这些操作包括一些快捷键,也包括一些操作符号。在开始之前,我们先确认下当前bash是那种模式:
set -o | grep 'emacs\|vi'
我的环境是如下结果:
编辑模式
因为bash的工作模式有两种分别是emacs和vi,而默认大部分是emacs,所以这里就以emacs为例。
编辑快捷键
我们先尝试下
Ctrl + a
和Ctrl + e
, 这两个快捷键就是移动到行首和行尾:行首和行尾
Ctrl + f
和Ctrl + b
这两个快捷键是将光标向右移动和向左移动一个字母位置,类似方向键的左右移动:左右移动字母
Alt + f
和Alt + b
这两个是将光标向右和向左移动一个单词位置:左右移动单词
Ctrl + x + x
这是按住Ctrl后连续按两次x键,它可以将光标在当前位置和行首位置之间切换:切换位置为行首或切换为原位置
Ctrl + u
和Ctrl + k
从光标位置删除到行首和行尾,注意这个是行首和行尾:删除到行首行尾
Ctrl + w
和Alt + d
从光标位置删除到单词的首和尾,这个跟上一条的区别是只删除当前光标所处的单词,而且还有一个是Alt
按键:删除到词首词尾
Ctrl + y
从光标位置开始粘贴,粘贴的内容就是上面删除的内容:粘贴
除了上面这些常用的编辑命令,还有一些不常用的这里就不一一列举了,有兴趣的可以自行Google。下面我们来说下历史命令和如何快速使用之前命令的参数。
查找历史命令
Ctrl + r
查找历史命令,输入关键字,当找到结果后直接回车即可。对于输入的关键字执行的是严格匹配,也就是不支持模糊查询。如果想退出,可以按Esc
是选中结果退出,而Ctrl + g
是直接退出。搜索退出
Ctrl + p
和Ctrl + n
两个和方向键向上和向下类似,都是取上一条和下一条历史命令。上下翻历史命令
history|grep '关键字'
用这种方式也可以查找历史命令。当查出结果后,记住之前的数字(如:10),然后用!10
即可执行此命令。查找历史命令
特殊的!
!
惊叹号在bash解释器比较方便操作的特殊符号,它的用法比较多,所以单独列出来说下常用的。
!!
执行上一条命令。上一条命令
!echo
执行最近的以echo
开始的命令。执行匹配字符开始命令
如果你不知道
!echo
的匹配的结果是不是你想要的,那么你可以用!echo:p
只打印不执行。打印匹配字符开始命令
!$
上一条命令的最后一个参数,除此也可以用快捷键Alt + .
。上一条命令最后一个参数
上面这几个上我常用的,还有些不常用的,只简单列出来:
-
!*
上一个命令的所有参数, -
^blah
删除上一条命令中的 blah -
^blah^foo
将上一条命令中的 blah 替换为 foo -
^blah^foo^
将上一条命令中所有的 blah 都替换为 foo
控制台快捷键
还有一些是控制台的快捷键
Ctrl + l
清空屏幕清屏
Ctrl + c
给当前进程发送中断信号SIGINT。中断程序
Ctrl + s
停止当屏幕的输出,查log停止滚屏
Ctrl + q
开始当前屏幕的输出开始滚屏
Shift + PageUp
和Shift + PageDown
在控制台向上和向下翻查屏幕输出上下翻屏
想知道更多快捷键信息查看可以用stty -a
命令查看,也可以用stty
去绑定自定义的快捷键。
关注我们了解更多原创文章
52Robot社区-二维码.jpg