连载中 4/20

vim 最小必学集:为什么 2026 年还得会它

2026-10-13 · 22 阅读 · 0 评论 · 0 赞

绕不开的场景

凌晨三点服务器配置文件写错,服务起不来——此时你只有 SSH 终端,nano 不一定装了,vim 一定有(几乎所有发行版内置)。会 vim 不是情怀,是保命技能:改一行配置、看一眼日志、加一条 crontab,都绕不开它。好消息:日常运维需要的 vim 只是它的零头。

模式思维:先理解再记忆

vim 的门槛全在一个设计:默认进的是普通模式——键盘不是用来打字的,是用来下指令的。按 i 进入插入模式才能打字,Esc 回到普通模式,: 进入命令模式执行保存退出。新手所有的“vim 出不去了”,都是忘了按 Esc。

  ┌─────────────── i / a / o ────────────────┐
  │                                          ▼
普通模式 ◄──── Esc ──── 插入模式(正常打字)
  │ ▲
  │ └── Esc ── 命令模式( : 开头)
  ▼
:w 保存   :q 退出   :wq 保存退出   :q! 不保存强退   :wq! 只读文件也强写

十个救命键

键作用(普通模式下)使用频率
i / o光标前插入 / 下一行新开一行最高
Esc回到普通模式最高
dd / 5dd删除(剪切)一行 / 五行高
yy / p复制一行 / 粘贴高
u / Ctrl+r撤销 / 重做高(后悔药)
/keyword向下搜索,n 下一个,N 上一个高(看日志神器)
gg / G跳到文件开头 / 结尾高

三个替换命令:批量改配置全靠它们

:s/old/new/        当前行第一个 old 换成 new
:s/old/new/g       当前行所有 old 换成 new
:%s/old/new/g      全文替换(最常用)
:%s/8080/9090/g    把端口全文从 8080 改成 9090

// 批量注释五行(可视块模式,运维刚需):
//   Ctrl+v 选中行首一列 → 大写 I 输入 # → Esc 两下,五行同时加上 #

// 打开大文件只看不改:
$ vim +100 big.log     直接跳到第 100 行

起步 .vimrc 三行

set number          显示行号(报错日志对照行号必备)
syntax on           语法高亮
set hlsearch        搜索高亮

// 写进 ~/.vimrc 全局生效;临时文件的乱缩进问题交给 :set paste 插入模式

到此地基篇结束:目录、文件、编辑器都齐了。下一篇开始本系列的精华段落——文本处理三剑客,第一剑:grep,文本查找的艺术。

☕
503

10 年全栈工程师 · 503咖啡馆主理人

#vim#编辑器#模式#替换#保命技能

评论 (0)

热门推荐

连载中 11/22

主从搭建实操:从零配出一主两从

光讲原理不过瘾?手把手搭一主两从:my.cnf 六个参数、复制账号、GTID、CHANGE REPLICATION SOURCE TO、SHOW REPLICA STATUS 验收,附翻车排查清单。

#MySQL#主从复制#GTID#主从搭建#高可用
2026-05-07 · 10114 阅读 · 0 评论 · 0 赞
连载中 16/22

连接池:HikariCP 参数与连接风暴

连接池不是越大越好:8 核机器配 1000 连接反而更慢的数学原理,HikariCP 四个必调参数,maxLifetime 与 wait_timeout 的隐形陷阱。

#MySQL#连接池#HikariCP#maxLifetime#连接风暴
2026-05-10 · 9877 阅读 · 0 评论 · 0 赞
连载中 4/16

缓存穿透:恶意 ID 打穿 MySQL 的四道防线

请求的数据在缓存和数据库里都不存在时,缓存形同虚设。聊聊参数校验、空值缓存、布隆过滤器、限流熔断四道防线的原理与组合打法。

#Redis#缓存穿透#布隆过滤器#高可用
2026-05-16 · 9307 阅读 · 21 评论 · 287 赞