编辑
2025-04-20
TechNotes
00

目录

一、常用快捷键速查(高频使用)
二、进阶分类详解
1. 光标导航类
2. 文本操作类
3. 历史管理类
4. 系统控制类
三、实战技巧
四、配置优化建议
高频技巧总结:
引用

一、常用快捷键速查(高频使用)

以下快捷键覆盖了 80% 的日常操作场景,建议优先掌握:

分类快捷键功能说明使用场景示例
光标移动Ctrl + A跳转到行首快速修改命令开头参数
Ctrl + E跳转到行尾补全长路径后快速执行命令
Alt + B/Alt + F按单词向左/向右移动光标快速定位到路径或参数中的特定位置
文本编辑Ctrl + U删除光标前至行首内容输错命令前半段时一键清空
Ctrl + K删除光标后至行尾内容保留前半段命令,删除多余参数
Ctrl + W删除光标前的一个单词快速移除错误参数
Ctrl + Y粘贴最近删除的内容恢复误删的文本
历史命令Ctrl + R反向搜索历史命令(输入关键词实时匹配)快速调用复杂的长命令
!!执行上一条命令重复执行 sudo 等需要确认的命令
Alt + .插入上一条命令的最后一个参数快速复用长路径或文件名
进程控制Ctrl + C强制终止当前进程中断卡死的程序
Ctrl + Z挂起当前进程到后台暂停任务并返回命令行
Ctrl + D退出当前 Shell 或结束输入快速退出 SSH 会话或终止 cat 输入
效率增强Tab自动补全路径/命令输入长文件名时减少击键
Ctrl + L清屏(等效 clear整理混乱的终端输出

二、进阶分类详解

1. 光标导航类

快捷键功能说明场景案例
Ctrl + B/向左移动一个字符微调拼写错误
Ctrl + F/向右移动一个字符同上
Ctrl + XX在行首和当前光标位置间切换快速对比命令首尾差异

2. 文本操作类

快捷键功能说明场景案例
Alt + D删除光标后至词尾快速删除错误拼写的单词后半部分
Ctrl + T交换光标前后字符修复 sl 拼写错误为 ls
Alt + T交换光标前后单词调整命令参数顺序

3. 历史管理类

快捷键功能说明场景案例
!n执行历史记录中第 n 条命令!202 执行编号为 202 的历史命令
!string执行最近以 string 开头的命令!git 执行最近一条 git 开头的命令
^old^new替换上一条命令中的字符串并执行^apt^yum 快速重试包管理器命令

4. 系统控制类

快捷键功能说明场景案例
Ctrl + S暂停终端输出(需配合 Ctrl + Q 恢复)冻结快速滚动的日志以便查看
fg/bg将后台挂起的进程恢复到前台/后台运行管理多任务时切换工作焦点

三、实战技巧

场景 1:快速修复长命令
输入 python3 manage.py runserver 0.0.0.0:8000 --settings=prod 后,发现端口被占用:

  1. Ctrl + C 终止进程
  2. 使用 Ctrl + A 跳转到行首,修改端口为 8080
  3. Alt + . 自动补全之前的 --settings=prod 参数

场景 2:复用复杂路径
执行 cp /var/log/nginx/access.log /backup/nginx_logs/ 后需要检查文件:

  1. 输入 ls
  2. Alt + . 自动插入 /backup/nginx_logs/
  3. 补全为 ls /backup/nginx_logs/access.log

四、配置优化建议

  1. 模式切换:通过 set -o emacsset -o vi 选择编辑模式(默认推荐 emacs 模式)
  2. 永久生效:将常用快捷键写入 ~/.inputrc 文件(如绑定 Ctrl + X 执行特定命令)
  3. 自定义扩展:使用 bind 命令创建个性化快捷键,例如:
    bash
    bind '"\C-x\C-l":"ls -al\n"' # 按 Ctrl+X+L 快速列出详细目录

高频技巧总结:

  • 组合技:Ctrl + A → 修改命令头 → Ctrl + E → 补全命令尾 → Enter 一气呵成

  • 历史复用:Ctrl + R + 关键词 → 快速定位复杂命令

  • 参数魔法:Alt + .!$ 实现参数跨命令复用

掌握这些技巧后,命令行操作效率可提升 3 倍以上。建议每天练习 2-3 个快捷键,逐步形成肌肉记忆。

引用

完整快捷键列表及原理说明可参考:Bash 官方手册
本文部分实践案例参考自:CSDN Bash 快捷键解析

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:GYC

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!