Shell 快捷键(二)

Shell 快捷键 中,对 Linux Shell 下 Emacs 分割的快捷键组合进行
了整理和总结,为了方便对比记忆,这里重新根据功能进行归类。

光标移动

命令 说明
Alt + b 后移一个单词
Alt + f 前移一个单词
Ctrl + b 后移一个字符
Ctrl + f 前移一个字符
Ctrl + a 把光标移到行首
Ctrl + e 把光标移到行尾
ctrl + ← 光标移动到前一个单词开头
ctrl + → 光标移动到后一个单词结尾
Ctrl + x Ctrl + x 在 EOL 和当前位置移动光标

输入编辑

命令 说明
Ctrl + h 删除前一字符
Ctrl + d 删除当前字符
Ctrl + k 删除当前字符到行末
Ctrl + u 删除行首到当前字符
Ctrl + w 删除单词到当前字符
Alt + d 从当前位置向后删除单词
Alt + ← 从当前位置向前删除单词
—————- —————————————————————
Esc + t 互换相邻两个单词
Alt + t 互换相邻两个单词
Ctrl + t 互换相邻两个字符
—————- —————————————————————
ctrl + ? 撤消前一次输入
Alt + r 撤消前一次动作
—————- —————————————————————
Alt + l 小写当前单词
Alt + u 大写当前单词
Alt + c 首字母大写当前单词
—————- —————————————————————
^oldstr^newstr 替换前一次命令中字符串

终端管理

命令 说明
Ctrl + s 锁住终端
Ctrl + q 解锁终端
Ctrl + l 清除终端
Ctrl + d 退出终端
————– —————————————————————–
Ctrl + c 中止命令
Ctrl + z 挂起命令
ctrl + o 重复执行命令

命令历史

命令 说明
Ctrl + r 向后查询历史,增量地
Ctrl + s 向前查询历史,增量地
Alt + p 向后查询历史,非增量地
Alt + n 向前查询历史,非增量地
————— —————————————————————-
Ctrl + p / ↑ 显示上一条命令
Ctrl + n / ↓ 显示下一条命令
Alt + < 移动到历史的首行
Alt + > 移动到历史的末行
————— —————————————————————-
Alt + . 插入最后一个参数
Alt + _ 插入最后一个参数
Esc + . 插入最后一个参数
Esc + _ 插入最后一个参数
————— —————————————————————-
Ctrl + y 粘贴刚才所删除的字符
Ctrl + Alt + y 插入上条命令的第一个参数

自动完成

命令 说明
Alt + / 尝试自动完成文件名
Alt + ? 显示当前自动完成列表
Alt + * 插入所有可能自动完成

其他

命令 说明
Ctrl + i 同 Tab
Ctrl + j 同 Enter
Ctrl + v CHAR 输入特殊字符
Ctrl + x @ 显示所有的可用的主机名自动完成
Ctrl + x Ctrl + e 使用 vim 写入 script 一次执行
2T 命令行补全
(string)2T 命令行补全
$2T 列出系统变量
=2T 列出当前目录
/2T 显示整个目录结构,包括隐藏文件
./2T 只显示子目录,包括隐藏目录
*2T 只显示子目录,不包括隐藏目录
@2T “/etc/hosts” 文件的条目
~2T “/etc/passwd” 文件中系统所有的当前用户

Shell 快捷键

在使用 Shell 进行 Linux 操作时,经常需要编辑大段的代码,如果仅仅使用键盘的
Delete 和 Backspace 键,那是一件非常折磨人的事情。我们以 Linux 默认的 Bash
Shell 为例,他可以设定为多种 Mode,使其操作习惯类似于一些熟悉的编辑器,比如
emacs 或 vi。

  • 列出所有 Mode

    set -o

  • 使用 vi 操作习惯來操作 Bash Shell

    set -o vi

  • 使用 emacs 的操作习惯来操作 Bash Shell,默认即为此 Mode

    set -o emacs

下面总结以下 Bash Shell 采用默认 emacs Mode 时可用的一些快捷键,能够极大提高
Shell 的操作效率。

继续阅读Shell 快捷键