ps: 一般命令牧师与编辑模式或者时命令行模式是可以切换的,但是编辑模式和命令模式是不可以直接切换的。
一般使用流程
首先使用vi /文件名 用vi打开文件。默认进入的是一般命令模式,然后按住i进入编辑模式,然后按esc键 进入命令行模式,然后输入w 写入保存,然后输入q 退出
一般命令模式
hjkl :分别代表的是左下上右
如果是多行移动的话可以 输入20 j 或者是20 ↓
[ctrl]+f 表示向下移动一页
[ctrl]+b 表示向上移动一页
[ctrl]+d 表示向下移动半页
[ctrl]+u 表示向下移动半页
+光标移动到非空格的下一行
-光标移动到非空格的上一行
20《space》表示光标向右移动20列
n《ent》 表示光标向下移动20列
0 表示移动到最左边
$ 移动到最右边
H光标移动到这个屏幕的最上方的那一行的第一个字符
M光标移动到这个屏幕的中央的那一行的第一个字符
L光标移动到这个屏幕的最下方的第一个字符
G 移动到最后一行
nG 移动到文件的第n行
gg 移动到文件的第一行
/wrod 光标寻找下一个wrod 的字符
?wrod 光标之上寻找wrod字符
n 重复上一个动作
N 反向重复上一个动作
n1,n2s/word1/word2/g n1 n2为数组 在这两个中间查找word1并替换为word2
1,$s/word1/word2/g
1,$s/word1/word2/gc 在替换的前提上给予提示。
x为删除后一个字符
X为删除前一个字符
nx 连续向后删除n个字符
dd 删除或者是剪切光标所在行
d1G删除光标所在到第一行的所有数据
ndd 向下删除n行
dG删除到最后一行
d$删除光标所在处到此行的最后一个字符
d0删除光标所在到此行的第一个字符
yy 复制光标所在的行
nyy复制光标所在行向下n行
y1G 复制光标所在行到第一行的所有数据
yG 复制光标所在行到最后一行的所有数据
y0 复制光标所在处到此行的第一个字符
y$复制光标所在处到此行的最后一个字符
p粘贴光标的下一行
P粘贴在光标的 上一行
J光标所以在行的数据和下一行的数据结合在一起
c 重复删除多个数据 例如向下删除10行【10cj】
u 恢复前一个操作
【Ctrl】+r 重复前一个操作
. 重复上一个操作
i 在光标所在处插入 ,I在光标所在处的第一个非空格处开始插入
a 在目前所在处的下一个字符开始删除 A在目前光标所在行的最后一个字符后插入
o 光标所在的 下一行插入 O 光标所在的上一行插入
r 替换模式 只替换一次 R 连续替换 replace mode
w 写入
w! 强制写入
:q 退出
!q 强制退出 不保存已经修改的文件
ZZ 自动退出
w {文件名} 将编辑的文件保存为新文件
r 【文件名】 在编辑数据中 读入另一个文件的数据 且将文件加到光标所在行的后面
n1,n2 w【文件】将n1 行的数据到n2 行的数据保存到新文件中
set nu 显示行号
set nonu 取消行号
vim会自动备份文件在非正常关闭文件或者是系统时可以恢复 .[文件名].swp
v 字符选择
V 可视行
【ctrl】+v 可视块
y 复制
d 删除
p 粘贴
通过 vim 文件1 文件2 可以同时打开两个文件或者是多个文件
:n 切换到下一个文件
:N 切换到上一个文件
: files 查看打开的文件列表
我们在vim中可以窗口划分同时打开操作多个文件
:sp 文件名 在另一个窗口打开文件名 如果只有sp的还就代表将当前文件打开在下面的窗口同时显示
窗口切换 先按住【ctrl】+w 然后松开 按住↑则可以切换到上面窗口
【ctrl】+w+↑
【ctrl】+w+q 退出
Ctrl +x-》ctrl+n 内容文字补齐
Ctrl +x-》ctrl+f 当前目录文件内的文件名作为关键字补齐
Ctrl +x-》ctrl+o 代码补齐 根据 文件的后缀名识别代码类型补齐
~/.vimrc ~/viminfo