Vim快速上手
Vim极简教程
《尚硅谷Linux云计算教程》—— 沈超
一、Vim的工作模式

二、三种模式的操作
- 命令模式(重点)
-
插入命令
命令 作用 a 在光标所在字符后插入 A 在光标所在行尾插入 i 在光标所在字符前插入 I 在光标所在行行首插入 o 在光标下插入新行 O 在光标上插入新行 -
移动光标
⬆️ ⬇️ ⬅️ ➡️、h、j、k、l
gg移动到文件头
G移动到文件尾
^移动到行首
$移动到行尾
:n移动到指定行 -
删除和剪切
x删除单个字母
nx删除n个字母
dd删除单行
ndd删除n行
:n1,n2d删除n1——n2行
这里的dd快捷键是删除也是剪切,删除的内容放入了剪切板
p粘贴到光标后
P(大)粘贴到光标前到
dG从光标所在行删除到文件尾 -
复制
yy复制单行
nyy复制多行
复制之后的粘贴仍然使用p或P -
撤销
u撤销,可以一直撤销到文件打开时的状态
ctrl + r反撤销,可以一直反撤销到最后的更改状态 -
替换
r替换光标所在处的单个字符
R从光标所在处开始替换字符,按ESC结束 -
查找
/查找内容从光标所在行向下查找
?查找内容从光标所在行向上查找
n下一个
N上一个 -
替换
:1,10s/old/new/g将1~10行所有的old换成new
:%s/old/new/g将整个文件中的old替换为new
-
输入模式
普通文本编辑器操作 -
编辑模式(末行模式)
:w保存不退出
:w 新文件名另存为新文件
:q不保存退出
:wq保存退出
:q!强制不保存退出,用于修改文件内容后,不保存数据退出
:wq!强制保存退出,当文件的所有者或root用户对文件没有写权限的时候,强制写入数据
参数设置:
:set (no)nu(取消)显示行号
:syntax on/off是否依据语法显示相关的颜色帮助。在Vim中修改相关配置文件和Shell脚本文件时默认会有颜色区分显示。
:set (no)hlsearch设置是否将查找的字符串高亮显示
:set (no)ruler设置是否显示右下角的状态栏
:set (no)showmode设置是否在左下角显示“—INSERT—”之类的状态栏
:set (no)list设置是否显示隐藏字符(Tab键用^I显示,回车键用$显示)
其他设置参数可以通过:set all进行查看。以上设置仅临时生效,若需永久生效必须修改Vim的配置文件:~/.vimrc
补充:Windows下的回车符在Linux中是用^M$显示,而不是$
三、Vim的使用技巧
1. 在Vim中导入其他文件内容或命令结果
-
导入其他文件内容
:r 文件名把文件内容导入到光标位置 -
在Vim中执行系统命令
:!命令仅在Vim中执行系统命令,并不能把命令结果导入到文本中 -
将命令执行结果导入
:r !命令在Vim中执行命令,并将结果导入光标所在行
2. 设定快捷键
:map 快捷键 执行的命令
Vim允许自定义快捷键,常用的如下:
:map ^P I#<ESC> 按carl + p时,在行首加入注释
:map ^B ^x 按ctrl + b时,删除行首第一个字母
注意:^P不能手工输入,需要执行ctrl + V + P来定义,或先ctrl + V,再ctrl + P
3. 字符替换
:ab 原字符 替换为的字符
在Vim中,有时需要频繁输入一个长文本字符串,如邮箱:
:ab mymail cd.litong@icloud.com 当碰到mymail时,自动转换为我的邮箱
4. 多文件打开
在Vim中可以同时打开两个文件:
vim -o 文件1 文件2 上下分屏打开两个文件,-O为左右分屏
按下ctrl + w后再按⬆️⬇️即可上下切换文件,左右打开按⬅️➡️

浙公网安备 33010602011771号