打开文件
vim /path/to/somefile 打开或者创建某文件
vim +# 打开后处于第n行
vim + 打开后处于最后一行
vim + /pattern 打开文件,定位第一次出现模式的行
Vim 打开默认处于编辑模式
vim模式
编辑模式(命令模式)
输入模式
末行模式(:)
模式转换
编辑-->键入
i 当前光标所在字符的前面,转换为输入模式
a 当前光标所在字符的后面,转换为输入模式
o 当前光标所在字符下一行,转换为输入模式
I 在当前光标所在行行首,转换为输入模式
A 在当前光标所在行行尾,转换为输入模式
O 当前光标所在字符上一行,转换为输入模式
输入 -->编辑模式 Esc键
编辑 --> 末行模式 :(冒号)
末行--> 编辑博士 Esc 键
关闭文件
1、末行模式关闭文件
:q 退出
:wq 保存并退出
:q! 不保存退出
:w!强行保存
:wq =:x
2、编辑模式下退出
ZZ 保存并退出
移动光标(编辑模式)
1.逐字符移动
h,向左移动
l ,向右移动
k,向上移动
j,向下移动
#h,移动#个字符
2.逐个单词移动
w,移至下一个单词此首
e,跳至当前或下一个单词词尾
b,跳至当前或者上一个单词词首
#w 跳#个单词
3.行内跳转:
0:跳至行首,绝对行首
^: 行首的第一个非空白字符
$:绝对行尾
4.行间跳转
#G 跳转至#行
G 最后一行
末行模式下,直接给出行号即可
翻屏
Ctrl + f 向上翻一屏
Ctrl + b 向上翻一屏
Ctrl + d 向下翻半屏
Ctrl + u 向上翻半屏
删除单个字符
x 删除光标所在处的单个字符
#x 删除光标所在处的及向后处的#个字符
删除命令 d
d命令与跳转命令联合使用,可以
#d 跳转符,#dw,#db
dd: 删除当前光标所在行
#dd删除包括当前光标所在行内的#行
末行模式下: startADD,EndDDd 删除起始行到结束行内容
. 表示当前行
$表示最后一行
+#,向下的#行
删除的内容在内存,可进行粘贴
粘贴命令 p
p 如果删除或复制为正行,则粘贴在所在行的下方;非整行,则粘贴至字符后
P 如果删除或复制为正行,则粘贴在所在行的上方;非整行,则粘贴至字符前
复制命令 y
用法同d命令
修改,先删除内容,在转换为输入模式
用法同d命令
替换 ,r 替换单个字符
R 进入替换模式
撤销编辑操作
u 撤销前一次操作(最多50次)
#u 撤销最近#次编辑操作
还原最近一次撤销操作,ctrl+r
重复前一次编辑操作
. (点命令)
可视化模式
v:按字符选取
V:按照矩形块选取
查找
/PATTERN
?PATTERN
n 向下跳转
N 向上查找
查找并替换
在末行模式下使用s命令,与sed命令一致
%指定全文替换
如何打开多个文件
vim file1, file2
: next 切换至下一个文件
:prev 切换至前一个文件
:last 切换至最后一个
:first 切换至第一个
:qa 全部退出
分屏显示一个文件
ctrl+w ,s 水平拆分窗口
ctrl+w, v 垂直拆分窗口
ctrl+w, arrow 切换光标
分窗口显示多个文件
-o 水平显示
-O 垂直显示
将当前文件中部分内容另存为另外一个文件
末行模式下使用w命令
:w
将另外一个文件的内容填充在当前文件中
:r /path/to/somefile
与shell交互
:! COMMAND
高级话题
1.显示行号
:set number
:set nu
:set nonu
2.忽略或区分大小写
:set ignorecase
:set ic
3.设置缩进
:set autoindent
:set ai / noai
4.查找到的文本高亮显示
:set hlsearch
:set nohlsearch
5. 语法高亮
:syntax on
:syntax off
配置文件
~/.vimrc
vimtutor
非法退出时,会生成swap文件,确认内容无用时即可删除
网友评论