01 Vim 编辑器的简单使用

目前在类liunx系统上,我们使用比较多的是 vim 编辑器。vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。

文章目录

1 vim介绍

Vim是从 vi 发展出来的一个文本编辑器,vi(visual editor)是unix/linux操作系统中最经典的文本编辑器,vim原来的名字叫做 vi imitation(vi模拟器),目的是完全复制vi的功能,为开源和在类unix系统中移植而生,在成功被移植到unix之后名字变成了vi improved(vi改进版)。[1](#1)

vim完全摆脱了对于鼠标的依赖,只使用键盘便可以完成对文件的各种操作。因此,在 ssh 远程连接 linux 时,我们常常会使用 vim 来对 linux 系统上的文件进行修改(因为 ssh 也只能使用键盘来操作qaq)。

是不是在想:不能用鼠标岂不是很麻烦?不尽然,当你熟练使用vim后,你会发现vim的效率很高,甚至喜欢上vim~

2 vim 三种模式

vim 有三种模式:一般模型、命令行模式和插入模式。

  • 一般模式:此状态下敲击键盘动作会被 Vim 识别为命令,而非输入字符,比如我们此时按下 i,并不会输入一个字符,i 被当作了一个命令。
  • 命令行模式:此状态下,可以在vim底部输入命令,常见操作有保存、查找、替换等。
  • 插入模式:这也是我们使用最多的模式,可以修改文件中的内容。

它们之间的转换关系如下:[2](#2)

3 常用快捷键

这一部分是主要内容,我将会罗列最常用的快捷键,仅供参考。

一般模式

操作:切换模式

快捷键 说明
i 切换到输入模式,在光标当前位置开始输入文本。(重要)
: 切换到底线命令模式,以在最底一行输入命令。(重要)
o 在当前行的下方插入一个新行,并进入插入模式。
O 在当前行的上方插入一个新行,并进入插入模式。

操作:增删改查

快捷键 说明
x 删除当前光标所在处的字符。
dd 剪切当前行。
yy 复制当前行。
p(小写) 粘贴剪贴板内容到光标下方。
P(大写) 粘贴剪贴板内容到光标上方。
u 撤销上一次操作。
Ctrl + r 重做上一次撤销的操作。
/word 向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串,就输入 /vbird 即可! (常用)
:n1,n2s/word1/word2/g n1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1 这个字符串,并将该字符串取代为 word2 !举例来说,在 100 到 200 行之间搜寻 vbird 并取代为 VBIRD 则::100,200s/vbird/VBIRD/g。(常用)
:1,$s/word1/word2/g :%s/word1/word2/g 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !(常用)
:1,$s/word1/word2/gc :%s/word1/word2/gc 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !且在取代前显示提示字符给用户确认 (confirm) 是否需要取代!(常用)

操作:保存退出

快捷键 说明
:w 保存文件。
:q 退出 Vim 编辑器。
:q! 强制退出Vim 编辑器,不保存修改。

操作:光标移动

快捷键 说明
h 或 向左箭头键(←) 光标向左移动一个字符
j 或 向下箭头键(↓) 光标向下移动一个字符
k 或 向上箭头键(↑) 光标向上移动一个字符
l 或 向右箭头键(→) 光标向右移动一个字符
[Ctrl] + [f] 屏幕『向下』移动一页,相当于 [Page Down]按键 (常用)
[Ctrl] + [b] 屏幕『向上』移动一页,相当于 [Page Up] 按键 (常用)
0 或功能键[Home] 这是数字『 0 』:移动到这一行的最前面字符处 (常用)
$ 或功能键[End] 移动到这一行的最后面字符处(常用)
G 移动到这个档案的最后一行(常用)
nG n 为数字。移动到这个档案的第 n 行。例如 20G 则会移动到这个档案的第 20 行(可配合 :set nu)
gg 移动到这个档案的第一行,相当于 1G 啊! (常用)
n n 为数字。光标向下移动 n 行(常用)

插入模式

没有快捷键,就和在文件编辑器中编辑文本一样。

命令模式

快捷键 说明
:w 将编辑的数据写入硬盘文档中(常用)
:q 离开 vi (常用)
:q! 若曾修改过文档,又不想储存,使用 ! 为强制离开不储存文档。
:wq 储存后离开,若为 :wq! 则为强制储存后离开 (常用)
:w [filename] 另存为
:r [filename] 将 『filename』 这个档案内容加到游标所在行后面
:! command 暂时离开 vi 到指令行模式下执行 command 的显示结果!例如
『:! ls /home』 即可在 vi 当中察看 /home 底下以 ls 输出的档案信息!

  1. 编辑器之神------Vim之常用快捷键分类整理 - seedoubleu,博客园,2021 ↩︎

  2. Linux vi/vim - 菜鸟教程,2021 ↩︎

相关推荐
AnalogElectronic12 分钟前
linux 测试网络和端口是否连通的命令详解
linux·网络·php
Edward111111111 小时前
4月28日防火墙问题
linux·运维·服务器
子琦啊1 小时前
【算法复习】字符串 | 两个底层直觉,吃透高频题
linux·运维·算法
AOwhisky2 小时前
Kubernetes 学习笔记:集群管理、命名空间与 Pod 基础
linux·运维·笔记·学习·云原生·kubernetes
小龙在慢慢变强..3 小时前
目录结构(FHS 标准)
linux·运维·服务器
2035去旅行3 小时前
嵌入式开发,如何选择C标准库
linux·arm开发
刘延林.3 小时前
win11系统下通过 WSL2 安装Ubuntu 24.04 使用RTX 5080 GPU
linux·运维·ubuntu
CodeOfCC4 小时前
Linux 嵌入式arm64安装openclaw
linux·运维·服务器
宵时待雨5 小时前
linux笔记归纳3:linux开发工具
linux·运维·笔记
magrich6 小时前
安装NoMachine并解决无外接显示器桌面黑屏
linux·运维·服务器