vim是文件编辑器,纯ascii码,是全屏编辑器和模式编辑器
vim模式
编辑模式
末行模式
输入模式
vim模式转换
编辑模式-->>输入模式
i:表示在当前光标所在字符的前面转为输入模式
a:表示在当前光标所在字符的后面转为输入模式
o:表示在当前光标所在行的下方插入一行并转为输入模式
I:表示在当前光标所在行的行首转为输入模式
A:表示在当前光标所在行的行尾转为输入模式
O:表示在当前光标所在行的上方插入一行,并转为输入模式
输入模式-->>编辑模式
ESC
编辑模式-->>末行模式
需要输入:冒号
:10d,删除第十行
:1,10d删除第1到第10行
:set nu设置行号
:! ls /etc可以执行shell命令
末行模式-->>编辑模式
ESC键
输入模式不能和末行模式直接转换
一、打开文件
vim /path/to/file
vim +#:打开文件并定位于第#行
vim +:打开文件定位于最后一行
vim +/pattern:打开文件,定位至第一次被模式匹配到的行的行首
二、关闭文件
1、末行模式下关闭文件
:w表示保存
:q表示不保存退出
:wq表示保存并退出
:!q表示不保存并退出
:w!表示强行保存,只有管理员有此权限
:x表示保存退出,相当于:wq
2、编辑模式下退出
ZZ表示保存退出
三、移动光标
1、逐字符移动
h:表示向左移动一个字符,#h表示向左移动#个字符
j :表示向下移动一行,#j表示向下移动#行
k:表示向上移动一行,#k表示向上移动#行
l:表示向右移动一个字符,#l表示向右移动#个字符
2、按照单词移动
w:移到下一个单词的词首,#w表示移动#个单词
e:移到当前单词的词尾或下一个单词的词尾
b:移到当前或前一个单词的词首
3、行内跳转
0:表示跳到行首,表示绝对行首
^:表示跳到行首即非空白字符,表示相对行首
$:表示跳到行尾,绝对行尾
4、行间跳转
G:表示跳到最后一行,#G表示跳到第#行
末行跳转
:#,表示跳到第#行
四、翻屏
ctrl+f:向下翻一屏
ctrl+b:向上翻一屏
ctrl+d:表示向下翻半屏
ctrl+u:表示向上翻半屏
五、删除单个字符
x:表示删除光标所在处的单个字符,#x表示光标所在处的#个字符
六、删除命令
d命令跟跳转命令使用
dw表示一个单词删除,#dw表示删除跳转符批定的#个单词
de表示一个单词删除,#dw表示删除跳转符批定的#个单词
db表示一个单词删除,#dw表示删除跳转符批定的#个单词
dd表示删除光标所在处的行,#dd表示删除光标所在行后的#行
末行模式,开始位置,结束位置d,
.(点)表示当前行
$表示最后一行
$-1表示倒数第二行
+#:表示当前行的向下的#行
七、粘贴命令
P:如果删除或复制为整行内容,则粘贴到当前光标所在行的下方;如果复制或粘贴为非整行,则粘贴到当前光标所在字符的后面。
p:如果删除或复制为整行内容,则粘贴到当前光标所在行的上方;如果复制或粘贴为非整行,则粘贴到当前光标所在字符的前面。
八、复制命令
y用法同d命令
九、先删除内容,再转为输入模式,即修改
c命令同d命令
十、替换命令r
r:替换单个字符,#r表示替换#个字符
R:替换多个字符
十一、撤消编辑操作命令u
表示撤消前一次的编辑操作,#u表示撤消#次操作
十二、反悔操作命令ctrl+r
十三、重复前一次的编辑操作
.(点)命令
十四、可视化操作
v:按字符先取
V:按矩形块选取
十五、查找命令
/PATTERN表示从文件尾部向首部查找
?PATTERN表示从当前光标所在行向尾部查找
n:向下
N:向上
在末行模式下使用sed 命令
:%addr1,addr2s@PATTERN@STRING@gi
%表示全文搜索
十六、使用vim编辑多个文件
vim file1 fle2...
:prev表示切换至上一个文件
:next表示切换至下一个文件
:last切换至最后一个文件
:first切换至第一个文件
十七、分屏显示一个文件
ctrl+w ,s水平拆分
ctrl+v,s垂直拆分
ctrl+方向键,切换窗口
:q退出当前窗口
:qa退出全部窗口
十八、分窗口显示多个文件,选项
vim -o file1 file2 file3水平
vim -o file1 file2 file3垂直
ctrl+方向键,表示切换
十九、当前文件的部分内容另存为一个文件
末行模式
:w /PATH/TO/SOMEWHERE
:addr1,addr2 w /PATH/TO/SOMEWHER
:r /path/to/somewhere将另外一个文件内容添加到当前文件内
二十、执行shell命令
末行模式:! 命令
二十一、其它
:set nu显示行号
:set nonu取消行号
:set ic忽略大小写
:set ai自动索进
:set hisearch显示高亮搜索到的文本
:set syntax on语法着色
vim配置文件
~/.vimrc当前用户生效
/etc/vimrc全局用户生效
学习文件
vimtutor文件
GB-2312