终端设置中常见的控制组合有哪些

Ham*_*ner 8 keyboard-shortcuts bash shell

我想对 bash(和类似)shell 中使用的常用 Control 键组合以及这些 shell 中使用的常用程序使用的组合有一个很好的指南。

我的特别动机是能够在一台计算机上运行 GNU screen,ssh 到第二台计算机并在该计算机上使用 screen 和 irssi。所以我需要使用 Ctrl-A 以外的东西来控制屏幕会话之一。所以我需要知道什么是 Control 组合键可以安全使用。

但我想这个列表对于想要将自定义操作绑定到 Control 键组合的其他人会很有用。

我认为我们最好按应用程序(例如 bash 本身、screen、vim、emacs)对 Control 键组合进行分组,以便轻松发现您使用或可以忽略的应用程序。因此,请为每个答案申请一个应用程序 - 希望有效。

Ham*_*ner 7

Bash本身使用 GNU readline 库,许多其他交互式命令行程序也是如此。Readline 具有以下模仿 emacs 行为的默认键绑定:

走动上线:

  • Ctrl + A 转到您当前正在键入的行的开头
  • Ctrl + E 转到您当前正在输入的行的末尾

在行上编辑文本:

  • Ctrl + U 清除光标位置之前的行。如果您在行尾,则清除整行。
  • Ctrl + H 与退格键相同
  • Ctrl + W 删除光标前的单词
  • Ctrl + K 清除光标后的行
  • Ctrl + T 交换光标前的最后两个字符
  • Esc + T交换光标前的最后两个单词

其他:

  • Ctrl + L 清除屏幕,类似于 clear 命令
  • Ctrl + R 让你搜索以前使用过的命令
  • Ctrl + C 杀死正在运行的任何东西
  • Ctrl + D 退出当前shell
  • Ctrl + Z 将您正在运行的任何内容放入暂停的后台进程。fg 恢复它。

  • 这些用于 emacs (`set -o emacs`) 键绑定 (bind -p)。对于 vi (`set -o vi`) 键绑定,它们会有所不同。 (4认同)

Ham*_*ner 0

GNU 屏幕默认使用Ctrl-A作为其命令键。

  • 要在运行屏幕时使用 Bash emacs 模式 Ctrl-A(行开头),请按 Ctrl-A,然后按 A(或按 Home)。 (2认同)