目录
三、文本编辑
1、vim三种工作模式
2、常用命令
3、插入文本快捷键
4、查找文本快捷键
5、查找文本效果图
6、替换文本快捷键
7、删除文本快捷键
8、复制和粘贴文本快捷键
9、保存退出文本命令
10、参考文章
三、文本编辑
一般情况下,执行vim 文件名,按i键进行编辑,编辑完成按ESC键退出输入模式,输入:wq,按回车键保存退出就行了!
1、vim三种工作模式
命令模式:默认,此模式下,可使用方向键(上、下、左、右键)或 k、j、h、i 移动光标的位置,还可以对文件内容进行复制、粘贴、替换、删除等操作;
输入模式:使 Vim 进行输入模式的方式是在命令模式状态下输入 i、I、a、A、o、O 等插入命令,当编辑文件完成后按 Esc 键即可返回命令模式;
快捷键 |
功能描述 |
i |
在当前光标所在位置插入随后输入的文本,光标后的文本相应向右移动 |
I |
在光标所在行的行首插入随后输入的文本,行首是该行的第一个非空白字符,相当于光标移动到行首执行 i 命令 |
o |
在光标所在行的下面插入新的一行。光标停在空行首,等待输入文本 |
O |
在光标所在行的上面插入新的一行。光标停在空行的行首,等待输入文本 |
a |
在当前光标所在位置之后插入随后输入的文本 |
A |
在光标所在行的行尾插入随后输入的文本,相当于光标移动到行尾再执行a命令 |
编辑模式:编辑模式用于对文件中的指定内容执行保存、查找或替换等操作。在命令模式状态下按“:”键,此时 Vim 窗口的左下方出现一个“:”符号,这是就可以输入相关指令进行操作了;
2、常用命令
3、插入文本快捷键
快捷键 |
功能描述 |
i |
在当前光标所在位置插入随后输入的文本,光标后的文本相应向右移动 |
I |
在光标所在行的行首插入随后输入的文本,行首是该行的第一个非空白字符,相当于光标移动到行首执行 i 命令 |
o |
在光标所在行的下面插入新的一行。光标停在空行首,等待输入文本 |
O(大写) |
在光标所在行的上面插入新的一行。光标停在空行的行首,等待输入文本 |
a |
在当前光标所在位置之后插入随后输入的文本 |
A |
在光标所在行的行尾插入随后输入的文本,相当于光标移动到行尾再执行 a 命令 |
4、查找文本快捷键
快捷键 |
功能描述 |
/abc |
从光标所在位置向前查找字符串 abc |
/^abc |
查找以 abc 为行首的行 |
/abc$ |
查找以 abc 为行尾的行 |
?abc |
从光标所在为主向后查找字符串 abc |
n |
向同一方向重复上次的查找指令 |
N |
向相反方向重复上次的查找指定 |
5、查找文本效果图
6、替换文本快捷键
例如,要将某文件中所有的 “root” 替换为 “liudehua”,则有两种输入命令,分别为:
:1, $s/root/liudehua/g 或 :%s/root/liudehua/g
上述命令是在编辑模式下操作的,表示的是从第一行到最后一行,即全文查找 “root”,然后替换成 “liudehua”。
如果刚才的命令变成
:10,20 s/root/liudehua/g
,则只替换从第 10 行到第 20 行的 “root”
快捷键 |
功能描述 |
r |
替换光标所在位置的字符 |
R |
从光标所在位置开始替换字符,其输入内容会覆盖掉后面等长的文本内容,按“Esc”可以结束 |
:s/a1/a2/g |
将当前光标所在行中的所有 a1 用 a2 替换 |
:n1,n2s/a1/a2/g |
将文件中 n1 到 n2 行中所有 a1 都用 a2 替换 |
:g/a1/a2/g |
将文件中所有的 a1 都用 a2 替换 |
7、删除文本快捷键
注意,被删除的内容并没有真正删除,都放在了剪贴板中。将光标移动到指定位置处,按下 “p” 键,就可以将刚才删除的内容又粘贴到此处。
快捷键 |
功能描述 |
x |
删除光标所在位置的字符 |
dd |
删除光标所在行 |
ndd |
删除当前行(包括此行)后 n 行文本 |
dG |
删除光标所在行一直到文件末尾的所有内容 |
D |
删除光标位置到行尾的内容 |
:a1,a2d |
函数从 a1 行到 a2 行的文本内容 |
8、复制和粘贴文本快捷键
快捷键 |
功能描述 |
p |
将剪贴板中的内容粘贴到光标后 |
P(大写) |
将剪贴板中的内容粘贴到光标前 |
y |
|
yy |
将光标所在行复制到剪贴板,此命令前可以加数字 n,可复制多行 |
yw |
将光标位置的单词复制到剪贴板 |
9、保存退出文本命令
需要注意的是,”w!” 和 “wq!” 等类似的指令,通常用于对文件没有写权限的时候(显示 readonly,如图 12 所示),但如果你是文件的所有者或者 root 用户,就可以强制执行!
命令 |
功能描述 |
:wq |
保存并退出 Vim 编辑器 |
:wq! |
保存并强制退出 Vim 编辑器 |
:q |
不保存就退出 Vim 编辑器 |
:q! |
不保存,且强制退出 Vim 编辑器 |
:w |
保存但是不退出 Vim 编辑器 |
:w! |
强制保存文本 |
:w filename |
另存到 filename 文件 |
x! |
保存文本,并退出 Vim 编辑器,更通用的一个 vim 命令 |
ZZ |
直接退出 Vim 编辑器 |