http://linuxtoy.org/archives/bash-shortcuts.html
LinuxTOY 是一个致力于提供 Linux 相关资讯的专题站点。如果您发现了好用好玩的 Linux 东东并愿意发扬自由、分享的精神,可以点击顶部导航 Contact 按钮进行投稿。
  • 捐助本站
  • Subscribe in a reader (original feed)
  • Follow us on Identi.ca
  • Linuxtoy on G+
  • 静态文件存储由又拍云存储提供
  • Free Online Storage Space
  • Linux Books

Popular entries

  • Archlinux 安装指南
  • Unix/Linux 命令速查表
  • 高效率编辑器 Vim
  • Wget 使用技巧
  • 玩转 MPlayer
  • 平铺式窗口管理器 Awesome
  • 三款 Linux 下的免费桌面级杀毒软件
  • 窗口管理器 Openbox 入门指南
  • 最小化安装 Ubuntu
  • 五个你可能不知道的 Linux 桌面环境
  • 7 个致命的 Linux 命令
  • 很轻很强大:轻量级桌面环境比较
  • GNOME Shell 介绍
  • 终极 Shell——Zsh
  • 6 款高品质的免费 Linux CAD 应用程序
  • 25+ 个值得跟随的 Linux 相关 Twitter 帐号
  • Linux 下的三款 Flash 独立播放器
  • Linux 下的几个游戏模拟器
  • 平铺式窗口管理器 Musca 初体验
  • History(历史)命令用法 15 例
  • Fluxbox 配置
  • bash 使用技巧
  • 10 本 O'Reilly 出版的免费好书

让你提升命令行效率的 Bash 快捷键 [完整版]

生活在 Bash shell 中,熟记以下快捷键,将极大的提高你的 命令行操作效率。

编辑命令

  • Ctrl + a :移到命令行首
  • Ctrl + e :移到命令行尾
  • Ctrl + f :按字符前移(右向)
  • Ctrl + b :按字符后移(左向)
  • Alt + f :按单词前移(右向)
  • Alt + b :按单词后移(左向)
  • Ctrl + xx:在命令行首和光标之间移动
  • Ctrl + u :从光标处删除至命令行首
  • Ctrl + k :从光标处删除至命令行尾
  • Ctrl + w :从光标处删除至字首
  • Alt + d :从光标处删除至字尾
  • Ctrl + d :删除光标处的字符
  • Ctrl + h :删除光标前的字符
  • Ctrl + y :粘贴至光标后
  • Alt + c :从光标处更改为首字母大写的单词
  • Alt + u :从光标处更改为全部大写的单词
  • Alt + l :从光标处更改为全部小写的单词
  • Ctrl + t :交换光标处和之前的字符
  • Alt + t :交换光标处和之前的单词
  • Alt + Backspace:与 Ctrl + w 相同类似,分隔符有些差别 [感谢 rezilla 指正]

重新执行命令

  • Ctrl + r:逆向搜索命令历史
  • Ctrl + g:从历史搜索模式退出
  • Ctrl + p:历史中的上一条命令
  • Ctrl + n:历史中的下一条命令
  • Alt + .:使用上一条命令的最后一个参数

控制命令

  • Ctrl + l:清屏
  • Ctrl + o:执行当前命令,并选择上一条命令
  • Ctrl + s:阻止屏幕输出
  • Ctrl + q:允许屏幕输出
  • Ctrl + c:终止命令
  • Ctrl + z:挂起命令

Bang (!) 命令

  • !!:执行上一条命令
  • !blah:执行最近的以 blah 开头的命令,如 !ls
  • !blah:p:仅打印输出,而不执行
  • !$:上一条命令的最后一个参数,与 Alt + . 相同
  • !$:p:打印输出 !$ 的内容
  • !*:上一条命令的所有参数
  • !*:p:打印输出 !* 的内容
  • ^blah:删除上一条命令中的 blah
  • ^blah^foo:将上一条命令中的 blah 替换为 foo
  • ^blah^foo^:将上一条命令中所有的 blah 都替换为 foo
友情提示
  1. 以上介绍的大多数 Bash 快捷键仅当在 emacs 编辑模式时有效,若你将 Bash 配置为 vi 编辑模式,那将遵循 vi 的按键绑定。Bash 默认为 emacs 编辑模式。如果你的 Bash 不在 emacs 编辑模式,可通过 set -o emacs 设置。
  2. ^S、^Q、^C、^Z 是由终端设备处理的,可用 stty 命令设置。
{ via }
Read More:
  • » 增强 Bash 的功能
  • » 你应该知道的 Linux 快捷键
  • » Bash 4.0 和 Readline 6.0 发布
  • » Bash 参考手册的 ePub 及 Mobi 格式
  • » bti: 让全世界知道你在折腾神马
  • » Advanced Bash Scripting Guide 6.0
  • » bash/zsh 的 Powerline 命令行提示
  • » WordPress 常用快捷键列表

26 Comments

  1. 1 gDD Commented @ 2011-11-13 11:56
    强大啊,为了活得更滋润点,决定都背下来。。。
  2. 2 康上明学 Commented @ 2011-11-13 11:56
    知道一些常用的,这里面大部分齐全了。
  3. 3 adam8157 Commented @ 2011-11-13 12:00
    Nice
  4. 4 yjc Commented @ 2011-11-13 12:07
    好多和emacs 命令一样
  5. 5 kevin Commented @ 2011-11-13 12:08
    不错不错,楼主好人,楼主一生平安
  6. 6 gDD Commented @ 2011-11-13 12:19
    还可以看看这里,快捷键部分说得更详细:
    http://en.wikipedia.org/wiki/ Bash_(Unix_shell)#Keyboard_shortcuts
  7. 7 rezilla Commented @ 2011-11-13 12:31
    alt-backspace 和 ctrl-w不完全相同,分隔符有些差别
  8. 8 mikeandmore Commented @ 2011-11-13 12:56
    rmbus会在这篇留言么?
  9. 9 nanashi Commented @ 2011-11-13 12:57
    以前不知道Ctrl + s,誤按後不得不重開...
  10. 10 arnkore Commented @ 2011-11-13 13:35
    emacs用户表示毫无压力。
  11. 11 pityonline Commented @ 2011-11-13 13:46
    Alt+f,Alt+b,Alt+t 和 gnome-terminal 的菜单快捷键有冲突……
  12. 12 thynson Commented @ 2011-11-13 14:07
    在. bashrc里面加上set -o vi,你们懂的
  13. 13 transtone Commented @ 2011-11-13 14:17
    可惜相当一部分对zsh无效。 bash的complete功能还是有点弱。
  14. 14 dreamersdw Commented @ 2011-11-13 14:21
    bash: bind -P zsh: bindkey
    就这些了
  15. 15 自由建客 Commented @ 2011-11-13 16:12
    set -o vi 没有压力
  16. 16 rmbus Commented @ 2011-11-13 17:19
    stupid tips~!
  17. 17 chatbot Commented @ 2011-11-13 19:43
    man bash, 查看READLINE和HISTORY EXPANSION两个章节会对本文内容有更全面的了解。快捷键的设置对应 bash中的bind内置 命令,相关内容可以man bash之后/^\s*bind [查看
  18. 18 monkeymonk Commented @ 2011-11-13 19:48
    @ pityonline: 一般我要编辑的话,先把菜单栏隐藏“Ctrl + H”.
  19. 19 mikeandmore Commented @ 2011-11-14 1:02
    看到rmbus但是没有看到rmbus喷 bash……好失落………………
  20. 20 hshqcn Commented @ 2011-11-14 11:10
    给力,以及楼上各位。 从reader赶来顶贴,必须的!
  21. 21 Billy Commented @ 2011-11-15 8:38
    从reader赶来,强帖,用了很久的大便,对这些 命令只知道其中几个
  22. 22 hckjsnzf Commented @ 2011-11-15 16:27
    不错,不错。
  23. 23 zhichyu Commented @ 2011-11-16 9:20
    @ monkeymonk: 你这一招在ubuntu 11.10上不凑效啊。
  24. 24 vinoca Commented @ 2011-11-16 13:47
    用zsh,emacs键绑定是通用的。支持!
  25. 25 清风博客 Commented @ 2011-11-16 15:01
    Emacser 表示毫无压力。
  26. 26 whenov Commented @ 2011-11-17 21:44
    请问为什么^blah^foo^只能替换上一条 命令的第一个blah?