首页 > 代码库 > vi编辑器的使用
vi编辑器的使用
vi编辑器是在linux环境工作经常需要用到的编辑器,本人今天下午略微有空把vi的使用整理成文本笔记。
命令模式:启动vi编辑器后默认进入命令模式。该模式中主要完成如光标移动,字符串查找,以及删除,复制,粘帖,文件内容等相关操作。
输入模式:该模式中主要的操作就是录入文件内容,可以对文本文件正文进行修改或者添加新的内容。处于输入模式时,vi编辑器的最后一行会出现‘--insert—‘的提示状态
末行模式:该模式可以设置vi编辑器的环境,保存文件,退出编辑器,以及对文件进行查找,替换等操作。处于末行模式时,vi编辑器的最后的一行会出现冒号":"提示符
模式的切换
在命令模式中,使用a.i.o等按键可以快速切换至输入模式,同时确定插入点的方式和位置。需要返回命令模式时,按esc键即可,进入末行模式键入冒号":"。常见的几个几个切换至输入模式的快捷键如下。
a:在当前光标位置之后插入内容
A:在行尾插入内容。
i:在当前光标之前插入内容
I(大写i):在当前关标行首插入内容
o:在当前光标所在行的后面插入新行
O:在当前光标所在行的前面插入新行
命令模式使用
1.移动鼠标
直接使用键盘中的方向键"上,下,左,右"可以移动光标,如果你编辑的文件内容有1000行那么多,而你知道自己要编辑的内容在800,是不是就要一直按"下"到800行呢?你可以这样做,但也可以在命令模式键入"800G"就直接跳到第800行,而"G"可以直接跳到文件内容的尾部,"gg"则是跳转回到文件内容的首部顺便提一下需要显示行数的话,可以在末行模式输入":set nu"就行了,取消则是"set nonu"。当你需要翻页浏览的内容时,"page up"和"ctrl B"可以向上翻页,"page down"和"ctrl F"则可以向下翻页。
2.复制.粘贴.和删除
复制:使用按键命令yy复制当前整行的内容到剪贴板,使用#yy的形式还可以复制从光标开始的"#"行进行。
粘贴:按小写"p" 即可将缓冲区的内容粘贴到光标位置之后,按大写"P"则会粘贴到光标处之前。
删除
使用”x“或“del”按键删除光标处的单个字节。
使用按键命令”dd“删除光标所在行,使用“#dd”的形式还可以删除从光标行开始处的#行
进行删除(其中"#"代表一个整数),例如光标在第15行键入"6dd"的话就会删除15~20行。
使用按键命令“d^”删除当前光标之前到行首的所有字符
使用按键命令“d¥”删除当前光标之处到行尾的所有字符
3.查找文件内容
按/键可以输入指定字符串,从当前光标开始向后查找(按"?"键则是向前查找),完成查找之后可以用n,N键在查找结果中来回切换。
4.向前向后更改操作
有时候你难免会有一些失误操作,那么这时你可以使用"u"和"U"进行撤销,"u"键命令取消最近一次操作,多次键入即向上撤销:“U”键命令用于取消当前所有行所做的所有的编辑。(一定要注意的是你保存了的内容不能通过"u"和"U"进行撤销)
末行模式的使用
1. 保存文件及退出
对文件进行修改后需要保存:
:w
若需要指定路径另存为,在W后面加上路径即可:
:w /opt/httpd.bak
如果没有对内容进行任何修改,需要直接退出编辑器
:q
不保存内容并且强制退出,
:q!
保存并且退出
:wq
或
:x
或者在命令模式"shift + zz"
2.打开新文件或读取其他文件
打开新文件进行编辑,":e 文件"(不存在则新建)
: e ~/install.log
在当前文件读入其他文件,": r 文件"
:r /etc/passwd
3.替换文件内容
:[替换范围] sub /旧内容/新内容 [/g]
单个字符或字符串替换
:sub /rpm/newrpm/g
指定行数替换
:5,15 sub /rpm/newrpm/g
整个文件替换
: % sub /rpm/newrpm/g