当前位置: 首页 > news >正文

《Linux 基础点滴》:(13)文本编辑入门 – 使用 Vim

《Linux 基础点滴》:(13)文本编辑入门 – 使用 Vim

2026-04-22 10:49  xiashengwang  阅读(0)  评论(0)    收藏  举报

第 13 篇:文本编辑入门 – 使用 Vim

学习目标

  • 掌握 Vim 的三种基本模式:普通模式、插入模式、命令模式
  • 学会打开、编辑、保存、退出文件
  • 掌握几个最常用的操作:移动光标、删除、复制、粘贴

核心概念

Vim 模式

  • 普通模式(Normal):默认模式,按 Esc 回到该模式。用于移动、删除、复制。
  • 插入模式(Insert):按 i、a、o 进入,可输入文本。
    • i —— insert 在光标前面
    • a —— append 在光标后面
    • o —— open 新开一行
  • 命令模式(Command):在普通模式按 : 进入,可执行保存、退出、查找等。

基本操作速查

操作 命令 说明
打开文件 vim file.txt
退出(不保存) :q! 强制退出
保存并退出 :wq 或 ZZ
保存 :w
进入插入模式 i (当前位置前插入)a 在之后,o 新开一行
删除一个字符 x
删除一行 dd
删除3行 3dd 数字+dd 代表删除几行
删除到行尾 D
删除 从光标到行首 d0
删除 从光标到行尾 d$
删除 一个单词 dw
复制一行 yy
复制3行 3yy 数字+yy 代表复制几行
复制 从光标到行首 y0
复制 从光标到行尾 y$
复制 一个单词 yw
粘贴 p(后)或 P(前)
撤销 u
重做 Ctrl + r
查找 /keyword,按 n 下一个 普通模式,向下找,按n的时候光标往下移动
查找 ?keyword,按 n 下一个 普通模式, 向上找,按n的时候光标往上移动
查找 /正则?正则 . = 任意一个字符 * = 任意次数 ^ = 行首,$ = 行尾 \c = 不区分大小写 < > = 完整单词
取消查找高亮 :nohl (no highlight) 普通模式下输入
移动光标 hjkl 也可用方向键
移动到第一行 gg
移动到最后一行 G
移动到行首 0
移动到行尾 $
全行替换 :s/old/new/g
全文替换 %s/old/new/g
全文替换 %s/old/new/gc 带询问安全替换
全文替换 %s/old/new/gi 忽略大小写

动手实验

实验 1:创建并编辑一个新文件

vim first.txt
# 按 i 进入插入模式
# 输入 "Hello Vim!"
# 按 Esc 回到普通模式
# 输入 :wq 保存退出

实验 2:修改已有配置文件(练习)

cp /etc/hosts ~/hosts_test
vim ~/hosts_test
# 移动光标到某一行,按 dd 删除
# 按 o 在下方新开一行,输入 127.0.0.1 myhost
# 按 Esc,:wq 保存

实验 3:查找与替换

vim ~/hosts_test
# 输入 :%s/127.0.0.1/localhost/g   # 将全文所有 127.0.0.1 替换为 localhost
# 按 :wq 保存退出

常见错误

  • 无法输入:处于普通模式,按 i 进入插入
  • 无法退出:按 Esc 确保在普通模式,然后 :q!
  • 误操作:按 u 撤销

思考题

  1. Vim 中如何将第 5 行到第 10 行复制到文件末尾?
  2. 如何设置显示行号?提示::set number