一、Vim常用操作
1.1 vim简介
Vim是一个功能强大的全屏幕文本编辑器,是Linux/Unix上最常用的文本编辑器,它的作用是建立、编辑、显示文本文件。(Vim没有菜单,只有命令)。vim在编辑一些配置文件,或者写一些小脚本的时候推荐使用。
1.2 vim三种模式基础操作
1.2.1 命令模式
(1)进入命令模式:输入 vi 【文件名】(已经存在或想创建的文件名)
(2)命令模式–>插入模式:输入 【i或a或o】
(3)命令模式–>编辑模式:输入 shift + :
1.2.2 插入模式
(1)进入插入模式:在命令模式下输入 【i或a或o】 然后可以键入文本内容
(2)插入模式–>命令模式:输入 【Esc】
1.2.3 编辑模式
(1)进入编辑模式:命令模式下 输入 shift + :
(2)编辑模式使用
(3)保存退出vim的编辑:输入wq
1.3 常用命令
1.3.1 插入命令
在命令模式下输入以下命令,进行不同的插入操作。
命令 | 作用 |
---|---|
a | 在光标所在字符后插入 |
A | 在光标所在行位插入 |
i | 在光标所在字符前插入 |
I | 在光标所在行行首插入 |
o | 在光标下插入新行 |
O | 在光标上插入新行 |
1.3.2 定位命令
命令 | 作用 |
---|---|
:set nu | 设置行号,在编辑模式下 |
:set nonu | 取消行号,在编辑模式下 |
gg | 到第一行 |
G | 到最后一行 |
nG | 到第n行 |
:n | 到第n行,在编辑模式下 |
nG | 到第n行 |
$ | 移至行尾 |
0 | 移至行首 |
1.3.3 删除命令
命令 | 作用 |
---|---|
x | 删除光标所在处字符 |
nx | 删除光标所在处后n个字符 |
dd | 删除光标所在行,ndd删除第n行 |
dG | 删除光标所在行到文件末尾内容 |
D | 删除光标所在处]到行尾内容 |
:n1,n2d | 删除指定范围行,编辑模式下 |
1.3.4 复制和剪切命令
命令 | 作用 |
---|---|
yy | 复制当前行 |
nyy | 复制当前行以下n行 |
dd | 剪切当前行 |
ndd | 剪切当前行以下n行 |
p、P | 粘贴在当前光标所在行下或行上 |
1.3.5 替换和取消命令
命令 | 作用 |
---|---|
r | 取代光标所在处字符 |
R | 从光标所在处开始替换字符,按Esc结束 |
u | 取消上一步操作 |
1.3.6 搜索和搜索替换命令
命令 | 作用 |
---|---|
/string | 搜索指定字符串,搜索时忽略大小写:set ic |
n | 搜索指定字符串的下一个出现位置 |
dd | 剪切当前行 |
:%s/old/new/g | 全文替换指定字符串 |
:n1,n2s/old/new/g | 在一定范围内替换指定字符串 |
1.3.7 保存和退出命令
命令 | 作用 |
---|---|
:w | 保存修改 |
:w new_filename | l另存为指定文件 |
:wq | 保存修改并退出 |
:q! | 不保存修改,退出 |
:wq! | 保存修改并退出(文件所有者及root可以使用) |
二、Vim使用技巧
2.1 导入其他文件的内容(:r 文件名)
在编辑模式下,输入r 文件名。例 :r /tmp/oldvim
2.2 在不退出vim的情况下执行命令(:!系统命令)
在编辑模式下,输入! 命令。例 :! which ls 在编辑模式下查询ls命令所在的位置
2.3 将命令执行结果导入当前文件(:r ! 系统命令)
2.4 定义快捷键(:map 【快捷键】 【触发命令】)
2.5 注释连续行(:n1,n2s/^/#/g)