vi按键

  1. vi的三种模式以及模式切换命令

三种模式分别是一般命令模式、编辑模式与命令行模式

(1)一般命令模式切换到编辑模式的可用的按键说明

i与I   进入插入模式

(i为从目前光标所在处插入;I为在目前所在行的第一个非空格符处开始插入)

a与A   进入插入模式

(a为熊目前光标所在的下一个字符处开始插入;A为从光标所在行的最后一个字符处开始插入)

o与O    进入插入模式

(o为在目前光标所在的下一行处插入新的一行;O为在目前光标所在处的上一行插入新的一行)

r与R    进入替换模式

(r只会替换光标所在的那一个字符一次;R会一直替换光标所在的文字,知道按下ESC为止)

Esc       退出编辑模式,回到一般命令模式中

 

(2)一般命令模式切换到命令行模式的可用按键说明

:w   将编辑的数据写入硬盘文件中

:w! 若文件属性为【只读】时,强制写入该文件。

:q   退出vi

:q! 若曾修改过文件,又不想保存,使用!为强制退出不保存

:wq 保存后退出,若为:wq!则为强制保存后退出

:set nu  显示行号,设置之后,会在每一行的前缀显示该行的行号

:set nonu 与set nu相反,为取消行号

 

                                                            图1 vi三种模式的相互关系 

2.vi的粘贴命令

p与P

p是将已复制的数据在光标的下一行粘贴

P是将已复制的数据在光标的上一行粘贴

 

3.使用vi的保存和退出命令

:w   将编辑的数据写入硬盘文件中

:w!  若文件属性为【只读】时,强制写入该文件。不过,到底能

         不能写入,还是跟你该文件的权限有关

:q    退出

:q!   若曾修改过文件,又不想保存,使用!为强制退出不保存

:wq   保存后退出  若为:wq!则为强制保存后退出

 

4.使用vi的光标命令

0功能键Home  (这是数字0)移动到这一行的最前面字符处

$ 或功能键End       移动到这一行的最后面字符

H                            光标移动到这个屏幕的最上方那一行的第一个字符

M                           光标移动到这个屏幕的中央那一行的第一个字符

L                            光标移动到这个屏幕的最下方那一行的第一个字符

G                           光标移动到这个文件的最后一行

gg                         移动到这个文件的第一行,相当于1G

nG                        n为数字,移动到这个文件的第n行,例如20G则

                             会移动到这个文件的第20行

n<Enter>             n为数字,光标向下移动n行

5.使用vi的查找命令

/word                  向光标之下寻找一个名称为word的字符串。

                           例如:要在文件内查找text这个字符串,就输入/text

?word               向光标之上寻找一个字符串名称为word的字符串

n                         继续向下查找

N                        继续向上查找

 

6.使用vi的替换命令

:n1,n2s/word1/word2/g  

格式为【:范围s/old/new

n1与n2为数字,在第n1与n2行之间寻找word1这个字符串,并将该字符串替换为word2.

g 表示多个替换(全部替换)

举例:在100到200行之间查找text1并替换为text2,

      则“:100,200s/text1/text2/g”

      从第一行到最后一行寻找text1字符串,并将该字符串替

换为text2,

则“:1,$s/text1/text2/g”

7.使用vi的复制和剪切命令

yy               复制光标所在的那一行

nyy             n为数字,复制光标所在的向下n行,例如20yy则是复制20行

range y       块复制

y1G             复制光标所在行到第一行的所有数据

   yG            复制光标光标所在行到最后一行的所有数据

   y0             复制光标所在的那个字符到改行行首的所有数据

   y$             复制光标所在的那个字符到改行行尾的所有数据

 d                剪切选定块到缓冲区; 
 dd              剪切整行 
 d^              剪切至行首 
 d$              剪切至行尾 
 dw             剪切一个word 
 dG             剪切至档尾

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值