vi常用命令

   vi是最强大的文本编辑器,没有之一。尽管 vi已经是古董级的软件,但还是有无数新人迎着困难去学习使用,可见其经典与受欢迎程度。

       无论是小说中还是电视剧,真正强大的武器都不容易驾驭,需要付出一些努力才能收获到更加强大的力量,对于vi这种上古神器来说更是如此。由于它全程使用键盘操作,很多首次接触 vi的人会觉得不习惯而中途放弃。然而,坚持下来的朋友就会渐渐地发现这种键盘操作的设计绝妙之处!经典之所以能成为经典,必然有它的道理,不用解释太多。

       观察一个程序员对vi的熟练程度,可以判断它的技术水平,如果他对vi不熟悉,就肯定不是Linux平台下的程序员,说vi不好用的人也肯定不熟悉vi,没有例外。

       vi 有两种模式,命令行模式和编辑模式,在命令行模式下,任何键盘输入都是命令,在编辑模式下,键盘输入的才是字符。

       打开一个文件: vi 文件名,如果文件不存在,就新建文件。

 

       Esc      从编辑模式切换到命令行模式

 

       i    从光标所在字符前插入  

       a   从光标所在的字符后面插入

       o   从光标所在行的下面插入空白行

       O   从光标所在行的上面插入空白行

       I    从光标所在行的行首插入

       A   从光标所在行的行末插入

 

       k   类似方向键上

       j    类似方向键下

       h   类似方向键左

       l    类是方向键右

 

       Ctrl+u       向上移动半页

       Ctrl+d       向下移动半页

 

       gg  光标跳到文本的第一行

       G    光标跳到文本最后一行

 

       0    光标跳到所在行的行首

       $    光标跳动到所在行的行尾

 

       w    光标跳到下个单词的开头

       b    光标回到上个单词的开头

       e   光标回到本单词的尾部

 

       x     每按一次,删除光标所在位置的一个字符

       nx  如"3x"表示删除光标所在位置开始的3个字符

       dw  删除当前光标所在的单词

 

       dd   删除光标所在行

       ndd  如"3dd"表示删除光标所在行开始的3行字符

 

       yy  将光标所在行复制到缓冲区

       nyy 将光标所在n行复制到缓冲区

       p    将缓冲区里的内容写到光标所在位置

 

       r     替换光标所在处的字符 replace

       R   替换光标所在处的字符,直到按下"Esc"为止

       cw 开始替换当前光标所在的单词,直到按下"Esc"为止

 

       u   撤销命令,可多次撤销

 

       J   把当前行的下一行接到当前行的尾部

 

       Ctrl+g       列出文件一共有多少行

       nG           表示移动光标到文件的第n行行首

 

       /abcd  在当前打开的文件中查找“abcd”文本内容

       n      查找下一个

       N      查找上一下

 

       .    重复执行上一次执行的vi命令。

 

       ~   对光标当前所在的位置的字符进行大小写转换。

 

       :5回车   光标跳到第5行。

       :n回车   光标跳到第n行。

 

       :w回车   存盘

       :w!回车  强制存盘

       :wq回车 存盘退出

       :x回车    存盘退出

       :q回车  不存盘退出

       :q!回车  不存盘强制退出

 

       :g/aaaaaaaaa/s//bbbbbb/g回车    把文件中全部的aaaaaaaaa替换成bbbbbb

 

       Ctl+insert   复制鼠标选中的文本,相当于Ctl+c

       Shift+insert 输出鼠标选中的文本,相当于Ctl+v

       以上两个命令在windows和UNIX中是通用的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值