您的位置:首页 > 运维架构 > Shell

bash shell 使用技巧

2015-07-16 11:02 302 查看
转载自 http://wl566.com/wz/62815.html http://blog.csdn.net/hannax/article/details/7604220
Ctrl + a:将光标定位到命令的开头
Ctrl + e:与上一个快捷键相反,将光标定位到命令的结尾
Ctrl + u:剪切光标之前的内容
Ctrl + k:与上一个快捷键相反,剪切光标之后的内容
Ctrl + y:粘贴以上两个快捷键所剪切的内容
Ctrl + t:交换光标之前两个字符的顺序
Ctrl + w:删除光标左边的参数(选项)或内容
Ctrl + p:显示上一条命令
Ctrl + l:清屏


使用GNU/Linux系统使用bash是家常便饭,知道一些bash常用的快捷键就显得非常有必要,bash快捷键大全

Ctrl-A 相当于HOME键,用于将光标定位到本行最前面,回到命令行开始,UNIX上只能用这个组合键

Ctrl-E 相当于End键,即将光标移动到本行末尾,转到命令行尾,UNIX上同样只能使用这个组合键

Ctrl-B 相当于左箭头键,用于将光标向左移动一格

Ctrl-F 相当于右箭头键,用于将光标向右移动一格

Ctrl-D 相当于Del键,即删除光标所在处的字符,如果命令行没有命令字符,就推出shell

Ctrl-K 剪切光标之后的内容,用于删除从光标处开始到结尾处的所有字符

Ctrl-L 清屏,相当于clear命令

Ctrl-R 进入历史命令查找状态,然后你输入几个关键字符,就可以找到你使用过的命令,非常好用

Ctrl-U 剪切光标之前的内容,用于删除从光标开始到行首的所有字符。一般在密码或命令输入错误时常用

Ctrl-H 删除光标左侧的一个字符

Ctrl-W 用于删除当前光标左侧的一个单词

Ctrl-P 相当于上箭头键,即显示上一个命令

Ctrl-N 相当于下箭头键,即显示下一个命令

Ctrl-T 用于颠倒光标所在处字符和前一个字符的位置。(目前不知道有什么作用,哪位朋友知道?)

Ctrl-J 相当于回车键

Alt-. 用于提取历史命令中的最后一个单词。你先执行history命令,然后再敲击此快捷键若干下,你就懂了!

Alt-BackSpace 用于删除本行所有的内容,基本上和Ctrl-U类似。

Alt-C 用于将当前光标处的字符变成大写,同时本光标所在单词的后续字符都变成小写。

Alt-L 用于将光标所在单词及所在单词的后续字符都变成小写。

Alt-U 用于将光标所在单词的光标所在处及之后的所有字符变成大写。

ps:使用bind -P命令可以查看所有键盘绑定。

ctrl键组合

ctrl+a:光标移到行首。

ctrl+b:光标左移一个字母

ctrl+c:杀死当前进程。

ctrl+d:退出当前 Shell。

ctrl+e:光标移到行尾。

ctrl+h:删除光标前一个字符,同 backspace 键相同。

ctrl+k:清除光标后至行尾的内容。

ctrl+l:清屏,相当于clear。

ctrl+r:搜索之前打过的命令。会有一个提示,根据你输入的关键字进行搜索bash的history

ctrl+u: 清除光标前至行首间的所有内容。

ctrl+w: 移除光标前的一个单词

ctrl+t: 交换光标位置前的两个字符

ctrl+y: 粘贴或者恢复上次的删除

ctrl+d: 删除光标所在字母;注意和backspace以及ctrl+h的区别,这2个是删除光标前的字符

ctrl+f: 光标右移

ctrl+z : 把当前进程转到后台运行,使用’ fg ‘命令恢复。比如top -d1 然后ctrl+z ,到后台,然后fg,重新恢复

,不过,由Ctrl + z转入后台运行的进程在当前用户退出后就会终止,所以用这个不如用nohup命令&,因为nohup命令的作用就是用户退出之后进程仍然继续运行,而现在许多脚本和命令都要求在root退出时仍然有效。esc组合

esc+d: 删除光标后的一个词

esc+f: 往右跳一个词

esc+b: 往左跳一个词

esc+t: 交换光标位置前的两个单词。

下面再被充下大家不是太熟悉,我用得比较多的操作方式:

!! 重复执行最后一条命令

history 显示你所有执行过的编号+历史命令。这个可以配合!编辑来执行某某命令

↑(Ctrl+p) 显示上一条命令

↓(Ctrl+n) 显示下一条命令

!$ 显示系统最近的一条参数

最后这个比较有用,比如我先用cat /etc/sysconfig/network-scripts/ifconfig-eth0,然后我想用vim编辑。一般的做法是先用↑ 显示最后一条命令,然后用Home移动到命令最前,删除cat,然后再输入vim命令。其实完全可以用vim !$来代替。

开发和管理员的话,掌握以上用法后,基本上工作就很有效率了;用到最后,你会不经意发现,弹指之间,许多复杂的指令你会很轻松的搞定。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: