命令行快捷键

发布时间 2023-07-03 18:32:38作者: ass_mum

概述

涉及在linux命令行下进行快速移动光标 命令编辑 编辑后执行历史命令 Bang(!)命令 控制命令等让basher更有效率

常用

按键组合 功能

移动光标

按键组合 功能
Ctrl + a 移到行首
Ctrl + e 移到行尾
Ctrl + b 往回(左)移动一个字符
Ctrl + f 往后(右)移动一个字符
Alt + b 往回(左)移动一个单词
Alt + f 往后(右)移动一个单词
Ctrl + xx 在命令行尾和光标之间移动
Esc-b 往回(左)移动一个单词
Esc-f 往后(右)移动一个单词
Ctrl + 左右键 在单词之间跳转

编辑命令

按键组合 功能
Ctrl + h 删除光标左方位置的字符
Ctrl + d 删除光标右方位置的字符( 注意:当前命令行没有任何字符时 会注销系统或结束终端 )
Ctrl + w 由光标位置开始 往左删除单词往行首删
Alt + d 由光标位置开始 往右删除单词往行尾删
Esc + d 由光标位置开始 删除单词 直到该单词结束
Ctrl + k 由光标所在位置开始 删除右方所有的字符 直到该行结束
Ctrl + u 由光标所在位置开始 删除左方所有的字符 直到该行开始
Ctrl + y 粘贴之前删除的内容到光标后
Ctrl + t 交换光标处和之前两个字符的位置
Alt + . 使用上一条命令的最后一个参数
Ctrl + _ 回复之前的状态撤销操作

Ctrl -a + Ctrl -k 或 Ctrl -e + Ctrl -u 或 Ctrl -k + Ctrl -u 组合可删除整行

Bang(!)命令

按键组合 功能
!! 执行上一条命令
^foo^bar 把上一条命令里的foo替换为bar 并执行
!wget 执行最近的以wget开头的命令
!wget:p 仅打印最近的以wget开头的命令 不执行
!$ 上一条命令的最后一个参数 与 Alt + . 和 $_ 相同
!* 上一条命令的所有参数
!*:p 打印上一条命令是所有参数 也即 !*的内容
^abc 删除上一条命令中的abc
^foo^bar 将上一条命令中的 foo 替换为 bar
^foo^bar^ 将上一条命令中的 foo 替换为 bar
!-n 执行前n条命令 执行上一条命令: !-1 执行前5条命令的格式是: !-5

查找历史命令

按键组合 功能
Ctrl + p 显示当前命令的上一条历史命令
Ctrl + n 显示当前命令的下一条历史命令
Ctrl + r 搜索历史命令显示历史命令中匹配的一条命令
按Enter键执行匹配命令
按ESC键在命令行显示而不执行匹配命令
Ctrl + g 从历史搜索模式( Ctrl + r )退出

控制命令

按键组合 功能
Ctrl + l 清除屏幕 然后 在最上面重新显示目前光标所在的这一行的内容
Ctrl + o 执行当前命令 并选择上一条命令
Ctrl + s 阻止屏幕输出
Ctrl + q 允许屏幕输出
Ctrl + c 终止命令
Ctrl + z 挂起命令