bash快捷键整理

时间: 2019-02-11阅读: 131标签: 快捷键

今天敲命令行时想在单词间移动,竟然不记得快速移动的快捷键。试了Ctrl + W和Ctrl + B/F均不凑效,于是怀念之前某博主分享的终端快捷键说明图。

好在很快好在很快从浏览记录中找到了链接。原博主(@linuxtoy)分享的终端跳转解说图为:


虽然命令难记,但解说图清晰易懂,让人印象深刻。

趁热打铁,马上找了篇解说bash快捷键的文章温习一下。博主Alan Skorkin的”Bash Shortcuts For Maximum Productivity“一文写得十分详细,故在此翻译和分享,并部分内容做注释和修正。

Alan Skorkin将bash快捷键分成四类,接下来一一给出。


编辑

  • Ctrl + a – 跳到行首
  • Ctrl + e – 跳到行尾
  • Ctrl + k – 删除当前光标至行尾内容
  • Ctrl + u – 删除当前光标至行首内容
  • Ctrl + w – 删除当前光标至词首内容
  • Ctrl + y – 将剪切的内容粘贴在光标后
  • Ctrl + xx – 在行首和当前光标处(来回)移动
  • Alt + b – 跳到词首
  • Alt + f – 跳到词尾
  • Alt + d – 删除自光标处起的单词内容
  • Alt + c – 大写光标处的字符(注:该条内容与原文不同
  • Alt + u – 大写自光标处起的单词内容
  • Alt + l – 小写自光标处起的单词内容
  • Alt + t – 将光标处单词与上一个词交换
  • Ctrl + f – 向前移动一个字符(相当于按向左箭头)
  • Ctrl + b – 向后移动一个字符(相当于按向右箭头)
  • Ctrl + d – 删除光标后一个字符(相当于按Delete)
  • Ctrl + h – 删除光标前一个字符(相当于按后退键)
  • Ctrl + t – 交换光标处的两个字符


搜索

  • Ctrl + r – 反向搜索历史命令
  • Ctrl + g – 退出历史搜索模式(相当于按Esc)
  • Ctrl + p – 上一个历史命令(相当于按向上箭头)
  • Ctrl + n – 下一个历史命令(相当于按向下箭头)
  • Alt + . – 使用上一个命令的最后一个单词


控制

  • Ctrl + l – 清屏
  • Ctrl + s – 终止输出到屏幕(对长时间运行并打印详细信息的命令)
  • Ctrl + q – 允许输出到屏幕(如果之前用过终止输出命令)
  • Ctrl + c – 终止命令
  • Ctrl + z – 中断命令


Bang(即感叹号)

  • !! – 执行上一条命令
  • !blah –执行最近运行过的以blah开头的命令
  • !blah:p – 打印!blah要执行的命令(并将其作为最后一条命令加入到命令历史中)
  • !$ – 上一条命令的最后一个单词 (等同于Alt + .)
  • !$:p – 打印!$指代的单词
  • !* – 上一条命令除最后一个词的部分
  • !*:p –打印!*指代部分

如果错误,敬请指正!


bash下有很多技巧,我知道这么几个:

0.关于按键模式
bash默认的按键模式是emacs风格的。你也可以通过set -i vi设定为vi风格。我用默认的emacs风格的,后面的快捷键基本能上都是它的。

1.历史命令的找回
比如一个命令输错了,需要该其中一个地方就好;或者想重复执行之前运行的某命令,那么使用方向键的↑和↓是最好的办法。
高端一点的,可以输入部分命令的开头几个字母,然后用Ctrl+R结合方向键找到。

2.光标移动到行首和行尾
比如你输入一个命令,发现它要sudo执行,这时候你的命令都输入完了,或者输入到一半,用←方向键移动光标到行首并不是一个好的方法。可以按home键来做到这一点,不过如果你的键盘上home键按起来不舒服甚至没有home键,可以用Ctrl+A来切换到行首。A应该是ahead的意思吧。
类似地,光标移动到行尾,用end键或者Ctrl+E。

3.密码输错之快速清除
Linux上输入密码时不显示任何字符,这其实也不太好,如果输错了密码,要狂按Backspace键看上去过于暴力。其实删除输错的密码,本质上是删除光标前面的字符,用Ctrl+U可以做到。

4.删除一个单词
英语单词以空格分隔。比如在复制文件的时候,发现路径中的一个单词写错了,按多次Backspace还是有点烦的(尤其我这种机械键盘敲的久了感觉手疼的),用Alt+Backspace键可以删除一个单词。

5.终端里的复制和粘贴
在gnome-terminal中,使用Ctrl+Shift+C复制,用Ctrl+Shift+V粘贴。这两个快捷键应当和emacs的按键风格无关了,具体可以看gnome-terminal的帮助。

6.其他shell
哪个shell最好,谁用谁知道。在熟悉了bash后,你不妨尝试下zsh;当然,emacs当还是推荐用eshell。


    内容以共享、参考为目的,请勿用于商业用途。其版权归原作者所有,如有侵权,请与小编联系,情况属实将予以删除!

    广告赞助文章投稿关于web前端网站点搜索站长推荐网站地图站长QQ:522607023

    小程序专栏: 土味情话心理测试脑筋急转弯幽默笑话段子句子语录成语大全