SlideShare une entreprise Scribd logo
1  sur  11
Bash的快捷键 Tony Deng http://twitter.com/wolfdeng http://friendfeed.com/tonydeng http://delicious.com/wolf.deng http://wolfchina.blogbus.com
前言 我们在平常工作中大量使用Linux,而是用Linux的过程中Bash操作更是非常频繁,所以怎样高效的操作Bash是一个非常重要的事情,能够提高我们的工作效率。 下面结合我自己的经验,总结一些高效操作Bash的小技巧。
使用快捷键之前的注意 如果你用SecureCRT,默认的话,会输入不了Alt开头的快捷键,因为Alt被当作菜单快捷键了,可以点 选项 -> 会话选项,选择tag终端 -> 仿真 -> Emacs,把“使用Alt作为元件”打勾。 如果你使用gnome-terminal,默认状态下也输入不了Alt开头的快捷键,也被当作菜单快捷键了,可以点 编辑 -> 键盘快捷键,把“启用菜单快捷键”前面的勾去掉。
重度推荐的快捷键 – Ctrl+r Ctrl + r 有时候,如果你想重新输入以前输入过的某条命令怎么办? 我见过两种做法: 不停的按向上方向键,试图找出那条命令 输入history命令,然后找到那条命令,或者grep一把history命令的输出 其实你有更好的选择,那就是按Ctrl + r,然后输入你想要的命令中含有的单词,就会出现这个单词的命令,如果它不是你想要的命令,那就继续按Ctrl  + r,直到出现你想要的命令为止。
重度推荐的快捷键-- Alt+. Alt+. 我们经常会做这样一件事情就是创建一个目录,然后进入这个目录做一些别的事情。如果目录名比较短,还没有什么太大的问题,如果比较长或者当前目录内类似文件名的文件比较多,就会比较麻烦了。 比如,下面的一个命令。 mkdir  /tmp/linux/shell/bash/etc/sysconfig/networks/eth0 cd /tmp/linux/shell/bash/etc/sysconfig/networks/eth0 如果,你第一遍mkdir输入这么长的参数,然后cd的时候还要输入这么长的参数那么就是一件让人很郁闷的事情了。 你输入完cd之后,可以按Alt+.,就会自动输入那个长的不能再长的目录名。 其实,Alt+.的真正作用就是把上一条命令的最后一个参数输入到当前命令行。如果,你想把上上调命令的最后一个参数拿过来,就继续按Alt+. 如果你想把上一条命令第一个参数拿过来怎么办?用Alt+0  Alt+. 如果是上上条命令的第一个参数呢?当然是Alt+0 Alt+. Alt+.
常用快捷键—程序控制 Ctrl+c 终止当前在前台运行的程序 Ctrl+z 挂起当前在前台运行的程序 Ctrl+d 如果光标在行首且当前行没有输入字符,Ctrl+d退出当前会话
常用快捷键—光标移动 Ctrl+f 向前(Forward)移动一个字符 Ctrl+b 向后(Backward)移动一个字符 Alt+f 向前移动一个单词 Alt+b 向后移动一个单词 Ctrl+a 移动光标到行首 Ctrl+e 移动光标到行尾
常用快捷键—光标移动 Ctrl+d 向前删一个字符 Ctrl+h 向后删一个字符 Alt+d 向前删一个单词 Ctrl+w 向后删一个单词, 单词之间以空格分割 Ctrl+l 清屏, 相当于命令clear, 有了这个快捷键, 就不用每次努力的敲clear了 Ctrl+k 删除当前光标到行尾的字符 Ctrl+u 删除当前光标到行首的字符 Ctrl+y 粘贴删除环里面的第一项 Alt+y 粘贴删除环里面的后面的项 Ctrl+/ undo Alt+. 取出上一条命令的最后一个参数
常用快捷键—历史命令操作 Ctrl+n 从历史命令列表中取下一条命令,相对于向下方向键 Ctrl+p 从历史记录去上一条命令,相对于向上方向键 Ctrl+r 向后增量搜索历史命令,非常方便,严重推荐 Ctrl+o 循环执行历史命令 可以用watch命令来替换
快捷键的背后 其实,上面的那些快捷键并不是有Bash来控制的,而是有一个叫readline的库来控制的。 Readline库用的地方非常多,比如gdb、mysql,所以,当你掌握了readline,就掌握了Bash、gdb、mysql等程序里面的快捷键操作技巧。 关于Readline的详细介绍和使用,可以看看这篇文章 http://docs.huihoo.com/homepage/shredderyin/readline.html
谢谢观赏 谢谢观赏

Contenu connexe

Plus de Tony Deng

Docker at the gate
Docker at the gateDocker at the gate
Docker at the gateTony Deng
 
《我们如何工作》—质量保障
《我们如何工作》—质量保障《我们如何工作》—质量保障
《我们如何工作》—质量保障Tony Deng
 
《我们如何工作》- 产品经理和工程师如何有效沟通
《我们如何工作》- 产品经理和工程师如何有效沟通《我们如何工作》- 产品经理和工程师如何有效沟通
《我们如何工作》- 产品经理和工程师如何有效沟通Tony Deng
 
我们为何工作--找到正确的工作方式
我们为何工作--找到正确的工作方式我们为何工作--找到正确的工作方式
我们为何工作--找到正确的工作方式Tony Deng
 
漫谈职业规划
漫谈职业规划漫谈职业规划
漫谈职业规划Tony Deng
 
一次Http请求过程分析
一次Http请求过程分析一次Http请求过程分析
一次Http请求过程分析Tony Deng
 
一次Code review引发的思考
一次Code review引发的思考一次Code review引发的思考
一次Code review引发的思考Tony Deng
 
My sql迁移总结
My sql迁移总结My sql迁移总结
My sql迁移总结Tony Deng
 
一次项目的探险旅程
一次项目的探险旅程一次项目的探险旅程
一次项目的探险旅程Tony Deng
 
Scrum敏捷开发模型
Scrum敏捷开发模型Scrum敏捷开发模型
Scrum敏捷开发模型Tony Deng
 
Shoutv 冯晓东
Shoutv 冯晓东Shoutv 冯晓东
Shoutv 冯晓东Tony Deng
 
技术债务的形成
技术债务的形成技术债务的形成
技术债务的形成Tony Deng
 
我们不了解的计算机世界(二)
我们不了解的计算机世界(二)我们不了解的计算机世界(二)
我们不了解的计算机世界(二)Tony Deng
 
我们不了解的计算机世界(一)--Unix目录结构的来历
我们不了解的计算机世界(一)--Unix目录结构的来历我们不了解的计算机世界(一)--Unix目录结构的来历
我们不了解的计算机世界(一)--Unix目录结构的来历Tony Deng
 
实时任务调度
实时任务调度实时任务调度
实时任务调度Tony Deng
 
节约内存:Instagram的redis实践
节约内存:Instagram的redis实践节约内存:Instagram的redis实践
节约内存:Instagram的redis实践Tony Deng
 
晁盖与宋江的“兄弟情谊”
晁盖与宋江的“兄弟情谊”晁盖与宋江的“兄弟情谊”
晁盖与宋江的“兄弟情谊”Tony Deng
 

Plus de Tony Deng (20)

Docker at the gate
Docker at the gateDocker at the gate
Docker at the gate
 
《我们如何工作》—质量保障
《我们如何工作》—质量保障《我们如何工作》—质量保障
《我们如何工作》—质量保障
 
《我们如何工作》- 产品经理和工程师如何有效沟通
《我们如何工作》- 产品经理和工程师如何有效沟通《我们如何工作》- 产品经理和工程师如何有效沟通
《我们如何工作》- 产品经理和工程师如何有效沟通
 
我们为何工作--找到正确的工作方式
我们为何工作--找到正确的工作方式我们为何工作--找到正确的工作方式
我们为何工作--找到正确的工作方式
 
SDN介绍
SDN介绍SDN介绍
SDN介绍
 
漫谈职业规划
漫谈职业规划漫谈职业规划
漫谈职业规划
 
一次Http请求过程分析
一次Http请求过程分析一次Http请求过程分析
一次Http请求过程分析
 
图解Git
图解Git图解Git
图解Git
 
一次Code review引发的思考
一次Code review引发的思考一次Code review引发的思考
一次Code review引发的思考
 
My sql迁移总结
My sql迁移总结My sql迁移总结
My sql迁移总结
 
一次项目的探险旅程
一次项目的探险旅程一次项目的探险旅程
一次项目的探险旅程
 
Scrum敏捷开发模型
Scrum敏捷开发模型Scrum敏捷开发模型
Scrum敏捷开发模型
 
Shoutv 冯晓东
Shoutv 冯晓东Shoutv 冯晓东
Shoutv 冯晓东
 
技术债务的形成
技术债务的形成技术债务的形成
技术债务的形成
 
我们不了解的计算机世界(二)
我们不了解的计算机世界(二)我们不了解的计算机世界(二)
我们不了解的计算机世界(二)
 
HBase
HBaseHBase
HBase
 
我们不了解的计算机世界(一)--Unix目录结构的来历
我们不了解的计算机世界(一)--Unix目录结构的来历我们不了解的计算机世界(一)--Unix目录结构的来历
我们不了解的计算机世界(一)--Unix目录结构的来历
 
实时任务调度
实时任务调度实时任务调度
实时任务调度
 
节约内存:Instagram的redis实践
节约内存:Instagram的redis实践节约内存:Instagram的redis实践
节约内存:Instagram的redis实践
 
晁盖与宋江的“兄弟情谊”
晁盖与宋江的“兄弟情谊”晁盖与宋江的“兄弟情谊”
晁盖与宋江的“兄弟情谊”
 

Bash的快捷键