vim文本编辑器

vim是vi的升级版

文本编辑分为三个模式

命令模式: 默认 复制 剪切 删除 粘贴 撤销 重做

输入模式: 修改文件内容

末行模式: 保存 退出 查找 替换 功能设置

文本.png命令进入到输入模式的方式

a 当前字符后输入

A 当前行行尾输入

i 当前字符签输入

I 当前行行首输入

o 当前行的下一行输入

O 当前行的上一行输入

s 删除当前字符后输入

S 删除当前行后输入

Home键 行首 End键 行尾

命令模式

yy 复制一行 p 粘贴(下一行) P粘贴(上一行)

50yy 复制50行

 

dd 剪切/删除一行

50dd 剪切/删除50行

 

^ 行首

$ 行尾

y^ 复制当前字符到行首

y$ 复制当前字符到行尾

d^ 剪切/删除当前字符到行首

d$ 剪切/删除当前字符到行尾

 

定位行:

gg 首行

G 尾行

30G 定位到30行

ygg 复制当前行到首行

yG 复制当前行到尾行

dgg 剪切/删除当前行到首行

dG 剪切/删除当前行到尾行

 

u 撤销一步操作

ctrl+r 重做

末行模式

按“shift”键和“:”键进入

保存和退出

:w

:q

:wq

:w!

:q!

:wq!

:x 保存退出

:e 打开文件

:w /tmp/new.txt 另存

:2,3w /tmp/new2.txt

:e! 重新打开当前文件

 

:X 加密

输入密码:

再次输入密码:

:wq

:X 取消加密

查找

/ab n 下一个 N上一个

?ab N 下一个 n 上一个

 

:s/ab/XX/ 替换当前匹配到的第一个字符

:s/ab/XX/g 替换当前行所有的匹配字符

:%s/ab/XX/g 替换所有行所有的匹配字符

s 替换 g 全局 %所有行

:%s/ab/XX/gc 交互式替换 c 交互式

:2,5s/ab/XX/g 第2行到第5行

:%s/^ *// 删除每行开头的所有空格

:%s/ //g 删除每行所有的空格

:/^$/d 删除空行

:g/^\s*$/d 删除所有的空白行

:%s/[0-9]//g 删除所有的数字

:%s/\t//g 删除文件中所有的制表符

其他功能设置

显示行号

:set nu

:set nonu

 

显示空白符类型

:set list

:set nolist

 

忽略大小写

:set ignorecase

:set noignorecase

 

设置指标符号长度

:set tabstop=4

 

自动缩进

:set autoindent

:set noautoindent

vim的配置文件: /etc/vimrc

[root@localhost ~]# vim /etc/vimrc

set nu

 

各用户的子配置文件(设置自己的配置)

[root@robin ~]# vim ~/.vimrc

可视化模式 v

通过键盘选择操作行

d 表示剪切/删除 y复制 p粘贴

 

可视化块模式: ctrl+v

通过键盘选择操作列和行

d 表示剪切/删除 y复制 p粘贴

 

ctrl+v ----> 选中添加字符的列----> shitf键+i----->输入字符---->ESC 2次

多文件操作

[root@localhost ~]# vim aa.txt cc.txt tt.txt

:next 下一个

:prev 上一个

:first 第一个

:last 最后一个

:file 查看文件的信息

ctrl+^

 

同屏编辑多个文件

[root@localhost ~]# vimdiff aa.txt cc.txt tt.txt

ctrl+w+w 切换文件

:wqa 保存退出所有文件

 

[root@localhost ~]# vim -O aa.txt cc.txt tt.txt 无颜色横排序

[root@localhost ~]# vim -o aa.txt cc.txt tt.txt 无颜色竖排序