Welcome

首页 / 操作系统 / Linux / linux vi编辑常用命令

vi编辑器中有三种状态模式
1.命令模式
2.输入模式
3.末行模式

            三种模式间的相互转换
 vi编辑器的启动与退出
 直接进入编辑环境 
$ vi
 进入编辑环境并打开(新建)文件
$ vi myfile
 退出vi编辑环境 
输入末行命令放弃对文件的修改,并退出编辑器
:q! 
 文件保存与另存为
 保存文件 
保存对vi编辑器中已打开文件的修改
:w
 另存为文件
将vi编辑器中的内容另存为指定文件名
:w myfile
 退出vi编辑器的多种方法
 未修改退出
没有对vi编辑器中打开的文件进行修改,或已对修改进行了保存,直接退出vi编辑器
:q
 保存并退出
对vi编辑器中的文件进行保存并退出vi编辑器
:wq
 不保存退出
放弃对文件内容的修改,并退出vi编辑器
:q! 
光标的移动和翻页操作
操作类型光标操作键功能
光标移动h向左移动光标 
l向右移动光标 
k向上移动光标 
j向下移动光标 
翻页Ctrl + f向前翻整页 
Ctrl + b向后翻整页 
Ctrl + u向前翻半页 
Ctrl + d向后翻半页  
行内快速跳转 
操作键功能
^将光标快速跳转到本行的行首字符 
$将光标快速跳转到本行的行尾字符 
w将光标快速跳转到当前光标所在位置的后一个单词的首字母 
b将光标快速跳转到当前光标所在位置的前一个单词的首字母 
e将光标快速跳转到当前光标所在位置的后一个单词的尾字母  
文件内行间快速跳转 
命令功能
:set nu 在编辑器中显示行号 
:set nonu 取消编辑器中的行号显示
1G跳转到文件的首行 
G跳转到文件的末尾行 
#G跳转到文件中的第#行  
进入输入模式 
命令功能
i在当前光标处进入插入状态 
a在当前光标后进入插入状态 
A将光标移动到当前行的行末,并进入插入状态 
o在当前行的下面插入新行,光标移动到新行的行首,进入插入状态 
O在当前行的上面插入新行,光标移动到新行的行首,进入插入状态 
cw删除当前光标到所在单词尾部的字符,并进入插入状态 
c$删除当前光标到行尾的字符,并进入插入状态 
c^命令删除当前光标之前(不包括光标上的字符)到行首的字符,并进入插入状态  
输入模式的编辑键操作 
按键功能
方向键进行上下左右方向的光标移动 
Home快速定位光标到行首
End快速定位光标到行尾
PageUp进行文本的向上翻页 
PageDown进行文本的向下翻页
Backspace删除光标左侧的字符
Del删除光标位置的字符  
删除操作 
命令功能
x删除光标处的单个字符 
dd删除光标所在行 
dw删除当前字符到单词尾(包括空格)的所有字符 
de删除当前字符到单词尾(不包括单词尾部的空格)的所有字符 
d$删除当前字符到行尾的所有字符 
d^删除当前字符到行首的所有字符 
J删除光标所在行行尾的换行符,相当于合并当前行和下一行的内容  
撤消操作 
命令功能
u取消最近一次的操作,并恢复操作结果
可以多次使用u命令恢复已进行的多步操作 
U取消对当前行进行的所有操作 
Ctrl + r对使用u命令撤销的操作进行恢复  
复制与粘贴操作 
命令功能
yy复制当前行整行的内容到vi缓冲区 
yw复制当前光标到单词尾字符的内容到vi缓冲区 
y$复制当前光标到行尾的内容到vi缓冲区 
y^复制当前光标到行首的内容到vi缓冲区
p读取vi缓冲区中的内容,并粘贴到光标当前的位置(不覆盖文件已有的内容) 
字符串查找操作 
命令功能
/word从上而下在文件中查找字符串“word” 
?word 从下而上在文件中查找字符串“word”
n定位下一个匹配的被查找字符串 
N定位上一个匹配的被查找字符串
 字符串替换操作 
命令功能
:s/old/new 将当前行中查找到的第一个字符“old” 串替换为“new”
:s/old/new/g 将当前行中查找到的所有字符串“old” 替换为“new”
:#,#s/old/new/g 在行号“#,#”范围内替换所有的字符串“old”为“new”
:%s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”
:s/old/new/c 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认
 vi编辑器的在线帮助 
使用vi在线帮助需安装的软件包
vim-common-6.3.035-3.i386.rpm 
vim-enhanced-6.3.035-3.i386.rpm 
软件包在RHEL5的第2张安装光盘 
使用vi在线帮助的两种方法 
在vi编辑器中按“F1”键
输入help末行命令
:help