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 ↩︎

相关推荐
HIT_Weston1 天前
84、【Ubuntu】【Hugo】搭建私人博客:文章目录(三)
linux·运维·ubuntu
qq_5470261791 天前
Linux 常用快捷键及文本编辑器
linux·运维·服务器
埃伊蟹黄面1 天前
磁盘级文件系统核心原理解析
linux·文件
醇氧1 天前
【Linux】 安装 Azul Zulu JDK
java·linux·运维
一直跑1 天前
查看显卡驱动版本,查看哪个用户使用显卡(GPU)进程
linux·服务器
滴水之功1 天前
Windows远程桌面(非图形化界面)连接Ubuntu22.04
linux
借你耳朵说爱你1 天前
在Linux上挂载磁盘
linux
小成202303202651 天前
Linux高级
linux·开发语言
ICT系统集成阿祥1 天前
Linux运维最万能的三条指令
linux·运维·服务器
CAU界编程小白1 天前
Linux系统编程系列之模拟文件操作
linux·算法