终端快捷键

快捷键应该是每一个需要和终端天天打交道的程序员必备的技能了,如果你还停留在每次前后左右一个字符一个字符移动光标的话,那你需要好好学习下面的终端快捷键,这可以大大提高你的效率

最常用

  • tab 命令或路径的补全键

移动光标

  • Ctrl + a/Home 切换到命令行开始
  • Ctrl + e/End 切换到命令行末尾
  • Ctrl + f 光标向右移动一个字符(相当于方向键右键)
  • Ctrl + b 光标向右移动一个字符(相当于方向键左键)

剪切、粘贴、清除

  • Ctrl + l 清除屏幕内容,效果等同于 clear 命令
  • Ctrl + u 清除剪切光标之前的内容
  • Ctrl + k 剪切清除光标之后的内容
  • Ctrl + y 粘贴刚才所删除的字符
  • Ctrl + w 剪切光标所在处之前的一个词(以空格、标点等为分隔符)
  • Ctrl + h 删除光标所在处的前一个字符(相当于退格键)
  • Ctrl + t 颠倒光标所在处及其之前的字符位置,并将光标移动到下一个字符
  • Alt + t 交换当前与以前单词的位置
  • Alt + d 剪切光标之后的词

控制快捷键

  • Ctrl + c 终止命令
  • Ctrl + s 锁住终端
  • Ctrl + q 解锁终端
  • Ctrl + z 转入后台运行, 但在当前用户退出后就会终止
  • Ctrl + d 退出 shell,logout
  • Ctrl +(x u) 按住 Ctrl 的同时再先后按 x 和 u,撤销刚才的操作

重复执行命令、查找历史命令

  • Ctrl + o 重复执行命令
  • Ctrl + r 在历史命令中查找 (这个非常好用,输入关键字就调出以前的命令了)
  • history 显示你所有执行过的编号 + 历史命令。这个可以配合 !n(n 是编号)来执行某某历史命令
  • !! 重复执行最后一条命令 (有四种方法)
    • 使用上方向键,并回车执行。
    • 按 !! 并回车执行。
    • 输入 !-1 并回车执行。
    • 按 Ctrl+P 并回车执行。
  • !$ 显示系统最近的一条参数(最后这个比较有用,比如我先用 cat /etc/hosts,然后我想用 vim 编辑。 一般的做法是先用↑ 显示最后一条命令,然后用 Home 移动到命令最前,删除 cat,然后再输入 vim 命 令。其实完全可以用 vim !$ 来代替)
  • cd - 回到前一个工作路径

推荐文档

熟练使用命令行是一种常常被忽视,或被认为难以掌握的技能,但实际上,它会提高你作为工程师的灵活性以及生产力。本文是一份我在 Linux 上工作时,发现的一些命令行使用技巧的摘要。有些技巧非常基础,而另一些则相当复杂,甚至晦涩难懂。这篇文章并不长,但当你能够熟练掌握这里列出的所有技巧时,你就学会了很多关于命令行的东西了。

《命令行的艺术》