bash快捷键合集

关于如何自定义快捷键以及更多信息,详见/usr/share/doc/bash/bash.html

记法:

  • <C-b>:即Ctrl+b组合键
  • <M-b>:即Meta+b组合键,Meta键一般指Alt键

光标移动类

  1. <C-a>:移动到这一行命令的开头
  2. <C-e>:移动到这一行命令的末尾
  3. <C-f>:向前移动一个字符
  4. <C-b>:向后移动一个字符
  5. <M-f>:向前移动一个单词(单词指的是连在一起的一堆字母和数字)
  6. <M-b>:向后移动一个单词
  7. <C-l>:清屏

历史记录类

  1. <C-p>:移动到历史记录列表中的前一条命令
  2. <C-n>:移动到历史记录列表中的后一条命令
  3. <M-<>:移动到历史记录的第一条命令
  4. <M->>:移动到历史记录的最后一条命令,一般是目前正在编辑的命令
  5. <C-r>:搜索历史记录列表
  6. <M-C-y>:获取上一条命令的argv[1]。如果给定参数n的话,就获取argv[n]。
  7. <M-.>:获取上一条命令的argv[argc - 1],即最后一个参数。
  8. <M-C-e>:将用户输入的alias命令替换为完整命令(如果有的话)。
  9. <C-o>:执行当前命令,然后获取历史记录列表中的下一条命令
  10. <C-x C-e>:打开一个编辑器来编辑当前的命令,bash会尝试执行$EDITOR环境变量表示的编辑器,若此环境变量未设置则执行emacs。

文本编辑类

  1. <C-d>:删除光标所在的字符,若当前行为空则退出bash
  2. <C-v Tab>:输入一个\t
  3. <C-t>:交换光标之前的字符和光标指向的字符,然后后移光标。若光标在末尾则交换光标前面两个字符
  4. <M-t>:交换光标之前和光标指向的单词,然后光标后移一个单词。若光标在最后,交换光标前面的两个单词
  5. <M-u>:当前单词全部变成大写
  6. <M-l>:当前单词全部变成小写
  7. <M-c>:当前单词变成首字母大写

剪切与粘贴

  1. <C-k>:删除从光标到行末尾的所有内容
  2. <C-u>:删除一整行
  3. <M-d>:删除当前单词或者下个单词
  4. <M-\>:删除光标周围的所有空格与Tab
  5. <C-y>:粘贴上次删除的内容
  6. <M-y>:在<C-y><M-y>后使用,浏览被删除文字的列表

参数

<M-0>, <M-1>, ...<M-->:为当前参数添加一个数位,或者创建一个新参数。<M-->用来创建负数参数


补全

  1. <Tab>:对从行首到光标为止的内容尝试自动补全
  2. <M-?>:显示光标前文字的所有可能补全形式
  3. <M-*>:直接应用所有可能的自动补全
  4. <M-/>:对光标前的内容试图按照文件名进行补全
  5. <C-x />:显示光标前的内容所有可能的文件名补全形式
  6. <M-~>:对光标前的内容试图按照用户名进行补全
  7. <C-x ~>:显示光标前的内容所有可能的用户名补全形式
  8. <M-$>:对光标前的内容试图按照shell变量名进行补全
  9. <C-x $>:显示光标前的内容所有可能的shell变量名补全形式
  10. <M-@>:对光标前的内容试图按照主机名进行补全
  11. <C-x @>:显示光标前的内容所有可能的主机名补全形式
  12. <M-!>:对光标前的内容试图按照shell命令进行补全,包括alias,保留字,内置指令,程序等
  13. <C-x !>:显示光标前的内容所有可能的shell命令补全形式
  14. <M-Tab>:按历史记录补全
  15. <M-{>:按文件名补全,但是以列表的形式提供所有可能补全的内容

  1. <C-x (>:开始录制宏
  2. <C-x )>:停止录制宏
  3. <C-x e>:播放之前录制的宏

杂项

  1. <C-g>:放弃当前命令,并响铃
  2. <Esc>:让下一次按键带有Meta组合键效果,比如Esc f等同于<M-f>
  3. <C-_>:撤销上条命令
  4. <M-r>:撤销对当前行的所有修改
  5. <C-]>:输入后再输入一个字符,跳转到下一处
  6. <M-C-]>:输入后再输入一个字符,跳转到上一处
  7. <M-#>:这一行被当做注释
  8. <C-x C-v>:显示bash版本
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容