日期:2023年11月12日标签:DeveloperHandbook

bash 终端快捷键 #

bash 内置了 readline 库,提供了很多行操作快捷键。

emacs 和 vi 模式 #

默认采用 Emacs 的快捷键,可以设置成 vi 的快捷键:

$ set -o vi

如果要更改回 emacs 模式,可以使用如下命令:

$ set -o emacs

我们不可能每次使用终端的时候,都输入命令进行设置,可以更改 ~/.inputrc 文件,这个文件是 readline 的配置文件。每次打开 bash 都会自动读取该文件的配置。文件中添加以下内容:

set edinting-mode vi

本篇博客内容主要是介绍 emacs 模式下的快捷键。关于 vi 的快捷键可以看这篇文章:

vim 快捷键:https://pengfeixc.com/blogs/developer-handbook/vim-shortcuts

Emacs 快捷键 #

1、光标移动 #

  • Ctrl + a:移到行首。
  • Ctrl + b:向行首移动一个字符,与左箭头作用相同。
  • Ctrl + e:移到行尾。
  • Ctrl + f:向行尾移动一个字符,与右箭头作用相同。
  • Alt + f:移动到当前单词的词尾。
  • Alt + b:移动到当前单词的词首。

2、编辑操作 #

  • Ctrl + d:删除光标位置的字符(delete)。
  • Ctrl + w:删除光标前面的单词。
  • Ctrl + t:光标位置的字符与它前面一位的字符交换位置(transpose)。
  • Alt + t:光标位置的词与它前面一位的词交换位置(transpose)。
  • Alt + l:将光标位置至词尾转为小写(lowercase)。
  • Alt + u:将光标位置至词尾转为大写(uppercase)。
  • Ctrl + k:剪切光标位置到行尾的文本。
  • Ctrl + u:剪切光标位置到行首的文本。
  • Alt + d:剪切光标位置到词尾的文本。
  • Alt + Backspace:剪切光标位置到词首的文本。
  • Ctrl + y:在光标位置粘贴文本。

3、自动补全 #

  • Tab:完成自动补全。
  • Alt + ?:列出可能的补全,与连按两次 Tab 键作用相同。
  • Alt + /:尝试文件路径补全。
  • Ctrl + x /:先按Ctrl + x,再按/,等同于Alt + ?,列出可能的文件路径补全。
  • Alt + !:命令补全。
  • Ctrl + x !:先按Ctrl + x,再按!,等同于Alt + !,命令补全。
  • Alt + ~:用户名补全。
  • Ctrl + x :先按Ctrl + x,再按,等同于Alt + ~,用户名补全。
  • Alt + $:变量名补全。
  • Ctrl + x :先按Ctrl+x,再按:先按Ctrl + x,再按,等同于Alt + $,变量名补全。
  • Alt + @:主机名补全。
  • Ctrl + x @:先按Ctrl + x,再按@,等同于Alt + @,主机名补全。
  • Alt + *:在命令行一次性插入所有可能的补全。
  • Alt + Tab:尝试用。bash_history里面以前执行命令,进行补全。

上面的操作太难记了,我一般常用的只有下面几个:

  • Ctrl + a:移到行首。
  • Ctrl + e:移到行尾。
  • Alt + f:移动到当前单词的词尾。
  • Alt + b:移动到当前单词的词首。
  • Ctrl + w:删除光标前面的单词。
  • Ctrl + k:剪切光标位置到行尾的文本。
  • Ctrl + u:剪切光标位置到行首的文本。
  • Tab:完成自动补全。

(完)

目录