一、vi/vim的概念
基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和末行模式(last line mode),各模式的功能区分如下:
1) 命令行模式
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式下,或者到末行模式。
2) 插入模式
只有在插入模式下,才可以做文字输入,按「ESC」键可回到命令行模式。
3) 末行模式
将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。
vim编辑器优点:
功能齐全
跟linux系统融合度高
不需要自己安装
vim格式:
vim 选项 文件名
! vim # 上一次打开的文件
vim+#(行号) 文件 # 想去的文件的哪一行
二、三种模式间的切换
三、命令模式的基本操作
1、光标移动
上下左右四个箭头:方向移动
page down ctrl+F: 向下翻动一整页内容
page up ctrl +B:向上翻动一整页内容
home 、 ^ 、 数字 “0” :跳转至行首
end 、$ :跳转至行尾
1G 或者 gg:跳转文件的首行
G :跳转到文件的末尾行
#G :跳转到文件的#行
2、复制、粘贴、删除
x 或del 删除光标处的单个字符
dd 删除当前光标所在行
#dd 删除光标所在行开始的#行内容
d^ 删除光标之前到行首的所有字符
d$ 删除光标之处到行尾的所有字符
dw 删除当前光标所在的整个单词
yy 复制当前行整行的内容到剪切板
#yy 复制光标所在行开始的#行内容
小p 将缓冲区的内容粘贴到光标所在行之下
大P 将缓冲区的内容粘贴到光标所在行之上
3、文件内容查找
/word 从上而下在文件中查找字符串“word”
?word 从下而上在文件中查找字符串“word”
n 定位下一个被匹配的查找字符串
N 定位上一个被匹配的查找字符串
4、撤销 编辑及保存退出
小u 按一下取消最近的一次操作,重复按u键 ,可撤销多条操作
大U 用于取消对当前行所做的所有编辑
大ZZ保存当前的文件并退出vi编辑器
5、进入输入模式
a: 在当前光标位置之后插入内容。
i: 在当前光标位置之前插入内容。
A: 在光标所在行的末尾(行尾)插入内容。
I: 在光标所在行的开头(行首)插入内容。
小o:在光标所在行的下面插入一个新行。
大O: 在光标所在行的上面插入一个新行。
四、末行模式的基本操作
1、保存文件及退出vi 编辑器
:w 保存修改内容
:w /root/newfile 另存为其他文件
:q 未修改退出
:q! 放弃对文件内容的修改,并退出vi
:wq或x 保存并退出
2、打开新文件或读入其他文件内容
:e ~/install.log 打开新的文件进行编辑
:r /etc/filesystems 在当前文件中读入其他文件的内容
3、文件内容的替换
: 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 会对每个动作提示用户进行确认
4、文件显示编号
:set nu: 在编辑器显示行号
: set nonu: 取消编辑器中的行号显示