作者: Sk 译者: LCTT Sun Yongfei

现如今,我在终端上花的时间更多,尝试在命令行完成比在图形界面更多的工作。随着时间推移,我学了许多 BASH 的技巧。这是一份每个 Linux 用户都应该知道的 BASH 快捷键,这样在终端做事就会快很多。我不会说这是一份完全的 BASH 快捷键清单,但是这足够让你的 BASH shell 操作比以前更快了。学习更快地使用 BASH 不仅节省了更多时间,也让你因为学到了有用的知识而感到自豪。那么,让我们开始吧。

ALT 快捷键

  1. ALT+A – 光标移动到行首。
  2. ALT+B – 光标移动到所在单词词首。
  3. ALT+C – 终止正在运行的命令/进程。与 CTRL+C 相同。
  4. ALT+D – 关闭空的终端(也就是它会关闭没有输入的终端)。也删除光标后的全部字符。
  5. ALT+F – 移动到光标所在单词词末。
  6. ALT+T – 交换最后两个单词。
  7. ALT+U – 将单词内光标后的字母转为大写。
  8. ALT+L – 将单词内光标后的字母转为小写。
  9. ALT+R – 撤销对从历史记录中带来的命令的修改。

    正如你在上面输出所见,我使用反向搜索拉取了一个指令,并更改了那个指令的最后一个字母,并使用 ALT+R 撤销了更改。

  10. ALT+. (注意末尾的点号) – 使用上一条命令的最后一个单词。

如果你想要对多个命令进行相同的操作的话,你可以使用这个快捷键来获取前几个指令的最后一个单词。例如,我需要使用 ls -r 命令输出以文件名逆序排列的目录内容。同时,我也想使用 uname -r 命令来查看我的内核版本。在这两个命令中,相同的单词是 -r 。这就是需要 ALT+. 的地方。快捷键很顺手。首先运行 ls -r 来按文件名逆序输出,然后在其他命令,比如 uname 中使用最后一个单词 -r

CTRL 快捷键

  1. CTRL+A – 快速移动到行首。

    我们假设你输入了像下面这样的命令。当你在第 N 行时,你发现在行首字符有一个输入错误

    CTRL+B – 光标向前移动一个字符。

    1. $ gind . -mtime -1 -type

    注意到了吗?上面的命令中我输入了 gind 而不是 find 。你可以通过一直按着左箭头键定位到第一个字母然后用 g 替换 f 。或者,仅通过 CTRL+AHOME 键来立刻定位到行首,并替换拼错的单词。这将节省你几秒钟的时间。

  2. 这个快捷键可以使光标向前移动一个字符,即光标前的一个字符。或者,你可以使用左箭头键来向前移动一个字符。

  3. CTRL+C – 停止当前运行的命令。

    如果一个命令运行时间过久,或者你误运行了,你可以通过使用 CTRL+C 来强制停止或退出。

  4. CTRL+D – 删除光标后的一个字符。

    如果你的系统退格键无法工作的话,你可以使用 CTRL+D 来删除光标后的一个字符。这个快捷键也可以让你退出当前会话,和 exit 类似。

  5. CTRL+E – 移动到行末。

    当你修正了行首拼写错误的单词,按下 CTRL+E 来快速移动到行末。或者,你也可以使用你键盘上的 END 键。

  6. CTRL+F – 光标向后移动一个字符。

    如果你想将光标向后移动一个字符的话,按 CTRL+F 来替代右箭头键。

  7. CTRL+G – 退出历史搜索模式,不运行命令。

    正如你在上面的截图看到的,我进行了反向搜索,但是我执行命令,并退出了历史搜索模式。

  8. CTRL+H – 删除光标前的一个字符,和退格键相同。
  9. CTRL+J – 和 ENTER/RETURN 键相同。

    回车键不工作?没问题! CTRL+JCTRL+M 可以用来替换回车键。

  10. CTRL+K – 删除光标后的所有字符。

    你不必一直按着删除键来删除光标后的字符。只要按 CTRL+K 就能删除光标后的所有字符。

  11. CTRL+L – 清空屏幕并重新显示当前行。

    别输入 clear 来清空屏幕了。只需按 CTRL+L 即可清空并重新显示当前行。

  12. CTRL+M – 和 CTRL+J 或 RETURN键相同。
  13. CTRL+N – 在命令历史中显示下一行。

    你也可以使用下箭头键。

  14. CTRL+O – 运行你使用反向搜索时发现的命令,即 CTRL+R。
  15. CTRL+P – 显示命令历史的上一条命令。

    你也可以使用上箭头键。

  16. CTRL+R – 向后搜索历史记录(反向搜索)。
  17. CTRL+S – 向前搜索历史记录。
  18. CTRL+T – 交换最后两个字符。

    这是我最喜欢的一个快捷键。假设你输入了 sl 而不是 ls 。没问题!这个快捷键会像下面这张截图一样交换字符。

  19. CTRL+U – 删除光标前的所有字符(从光标后的点删除到行首)。

    这个快捷键立刻删除前面的所有字符。

  20. CTRL+V – 逐字显示输入的下一个字符。
  21. CTRL+W – 删除光标前的一个单词。

    不要和 CTRL+U 弄混了。CTRL+W 不会删除光标前的所有东西,而是只删除一个单词。

  22. CTRL+X – 列出当前单词可能的文件名补全。
  23. CTRL+XX – 移动到行首位置(再移动回来)。
  24. CTRL+Y – 恢复你上一个删除或剪切的条目。

    记得吗,我们在第 21 个命令用 CTRL+W 删除了单词“-al”。你可以使用 CTRL+Y 立刻恢复。

    看见了吧?我没有输入“-al”。取而代之,我按了 CTRL+Y 来恢复它。

  25. CTRL+Z – 停止当前的命令。

    你也许很了解这个快捷键。它终止了当前运行的命令。你可以在前台使用 fg 或在后台使用 bg 来恢复它。

  26. CTRL+[ – 和 ESC 键等同。

杂项

  1. !! – 重复上一个命令。
  2. ESC+t – 交换最后两个单词。

这就是我所能想到的了。将来我遇到 Bash 快捷键时我会持续添加的。如果你觉得文章有错的话,请在下方的评论区留言。我会尽快更新。

Cheers!


via: https://www.ostechnix.com/list-useful-bash-keyboard-shortcuts/

作者:SK 译者:heart4lor 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

有用的 Bash 快捷键清单的更多相关文章

  1. bash快捷键

    https://linuxtoy.org/archives/bash-shortcuts.html 编辑命令 Ctrl + a :移到命令行首 Ctrl + e :移到命令行尾 Ctrl + f :按 ...

  2. [转]bash快捷键

    生活在 Bash shell 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 编辑命令 Ctrl + a :移到命令行首 Ctrl + e :移到命令行尾 Ctrl + f :按字符前移(右向) ...

  3. linux bash快捷键

    bash快捷键 CTRL+F 光标向前移动一个字母 CTRL+B 光标向后移动一个字母 CTRL+A HOME CTRL+E END

  4. [转]让你提升命令行效率的 Bash 快捷键

    生活在 Bash shell 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 编辑命令 Ctrl + a :移到命令行首 Ctrl + e :移到命令行尾 Ctrl + f :按字符前移(右向) ...

  5. 让你提升命令行效率的 Bash 快捷键

    生活在 Bash shell 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 编辑命令 Ctrl + a :移到命令行首 Ctrl + e :移到命令行尾 Ctrl + f :按字符前移(右向) ...

  6. 显示“快捷键清单” acessksy

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

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

    转自:http://linuxtoy.org/archives/bash-shortcuts.html 生活在 Bash shell 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 大部分对其他 ...

  8. Bash 快捷键[转]

    编辑命令 Ctrl + a :移到命令行首 Ctrl + e :移到命令行尾 Ctrl + f :按字符前移(右向) Ctrl + b :按字符后移(左向) Alt + f :按单词前移(右向) Al ...

  9. (转)Bash 快捷键 完整版

    转自:http://www.opsers.org/linux-home/base/full-version-of-bash-keyboard-shortcuts.html#toc-3 生活在 Bash ...

随机推荐

  1. BZOJ2154: Crash的数字表格 & BZOJ2693: jzptab

    [传送门:BZOJ2154&BZOJ2693] 简要题意: 给出n,m,求$\sum_{i=1}^{n}\sum_{j=1}^{m}LCM(i,j)$ 题解: 莫比乌斯反演(因为BZOJ269 ...

  2. bzoj2229: [Zjoi2011]最小割(分治最小割+最小割树思想)

    2229: [Zjoi2011]最小割 题目:传送门 题解: 一道非常好的题目啊!!! 蒟蒻的想法:暴力枚举点对跑最小割记录...绝对爆炸啊.... 开始怀疑是不是题目骗人...难道根本不用网络流?? ...

  3. legend---十一、thinkphp事务中if($ans1&&$ans2){}else{}方式和try{}catch{}方式事务操作的区别在哪里

    legend---十一.thinkphp事务中if($ans1&&$ans2){}else{}方式和try{}catch{}方式事务操作的区别在哪里 一.总结 一句话总结:执行的条件其 ...

  4. elasticsearch如何安全重启

    elasticsearch如何安全重启节点 问题: elasticsearch集群,有时候可能需要修改配置,增加硬盘,扩展内存等操作,需要对节点进行维护升级.但是业务不能停,如果直接kill掉节 点, ...

  5. SAI / PS绘画一个卡通女孩详解

    本教程介绍使用SAI / PS绘画一个卡通女孩的教程 ,教程很详细,动起你的小手一起来试试吧! 软件下载:http://www.dongmansoft.com/xiazai.html 想要Get到更多 ...

  6. Dapper基础知识三

    在下刚毕业工作,之前实习有用到Dapper?这几天新项目想用上Dapper,在下比较菜鸟,这块只是个人对Dapper的一种总结. Dapper,当项目在开发的时候,在没有必要使用依赖注入的时候,如何做 ...

  7. Web前端为什么这么火爆?

    Web前端为什么这么火爆? 互联网发展到今天,全球已有28.9亿互联网用户,中国有355万网站,6.5亿网民,13亿手机用户,5亿微信用户,当步入互联网+时代后,互联网已经越来越复杂,纷繁复杂的互联网 ...

  8. vue项目input的placeholder根据用户的选择改变

    html部分 <el-input :placeholder="holder" v-model="searchKey"> <el-select ...

  9. CentOS 7在grub rescue模式中修复系统

    安装完CentOS 7后 修改硬盘分区后,系统重启后,无法正常启动,进入grub rescue模式: 网上大多数centos grub rescue的资料应该是Centos 7之前的,其中提到的命令很 ...

  10. CF451E Devu and Flowers (组合数学+容斥)

    题目大意:给你$n$个箱子,每个箱子里有$a_{i}$个花,你最多取$s$个花,求所有取花的方案,$n<=20$,$s<=1e14$,$a_{i}<=1e12$ 容斥入门题目 把取花 ...