vi 是linux 系统的第一个全屏交互式编辑器,使用它可以实现文本的输入输出、删除、查找替换等等等功能。用户还可以根据自己的需要对其进行定制。
命令
vim +n filename 打开文件并将光标置于第n行行首
vim + filename 打开文件将光标置于最后一行行首
vim +/pattern filename 打开文件并将光标置于第一个匹配pattern行的行首
vim -r filename 首次打开vim编辑器时发生崩溃,则打开其交换文件
vim 普通模式下的操作
操作 功能
h 或左方向键 光标向左移动一个字符
j 或向下方向键 光标向下移动一个字符
k或向上方向键 光标向上移动一个字符
l或向右方向键 光标向右移动一个字符
ctrl +f 屏幕下翻一页
ctrl +b 屏幕上翻一页
n<space> 光标移至该行的第n个字符
0 移动到这一行的最前字符处
$ 移动到这一行的最后面字符处
vim 在普通模式下
操作 功能
i 进入插入模式i 表示从光标前插入
a 进入插入模式,a表示从当前光标所在位置的下一个字符开始插入
其他的o 、r 再次不再介绍
由编辑模式退回到普通模式,按esc 键
操作 功能
x ,X 在一行当中,x为向后删除一个字符,X 为向前删除一个符
nx n为数字,连续向后删除n个字符
dd 删除光标所在的行
ndd n为数字,删除光标所在行的向下n行
d1G 删除光标所在行到第一行的所有数据
dG 删除光标所在行到最后一行的所有数据
d$ 删除最后一行所有的数据
d0 删除光标所在字符位置之前的改行所有字符
yy 复制光标所在那一行
nyy n位数字,复制光标所在行的向下n行
y1G 复制光标所在行到第一行的所有数据
yG 复制光标所在行到最后一行的所有数据
y0 复制光标所在的那个字符到该行行首的所有数据
y$ 复制光标所在的那个字符到该行行尾的所有数据
p,P p表示将已复制的数据在光标下一行粘贴
u 撤销上一步的操作
ctrl+r 重做上一次的操作
编辑完成后退回到普通模式 :wq 保存退出
存盘退出相关的读写命令
:w 将编辑的内容写入磁盘
:w! 当文件为只读时强制写入
:q 退出vim 编辑器
:q! 不保存强制退出
:wq 保存退出
ZZ 表示存盘退出
查找和替换操作
操作 功能
/word 向光标之下寻找一个名为 word的字符串
?word 向光标之上查找一个为word的字符串
n 重复之前的一个搜寻动作,向下查找
N 反向进行前一个搜索
:n1,n2s/word1/word2/g 在n1 到n2 行之间的word1 字符串全部替换成word2
:1,$s/word1/word2/g 把从第一行到最后一行的word1 全部替换成word2
设置vi 或者vim的环境
:set nu 设置行号
:set nonu 取消行号
:syntax on 根据语法显示不同的颜色
编辑多个文档
vim /etc/xxx /etc/xxxxx /etc/sjjjj
:n 进入编辑下一个文档
其余的操作再次不多介绍