在 Linux 日常运维和开发中,vim 是使用频率非常高的文本编辑器。无论是在线修改配置、快速修复脚本,还是查看日志并做批量替换,掌握 vim 都能显著提升效率。
一、vim 是什么?
vim(Vi IMproved)是 vi 的增强版编辑器,特点是:
对于运维和后端开发来说,vim 是“必须会”的基础工具之一。
二、vim 的三种核心模式
vim 最关键的概念不是“命令参数”,而是“模式”。
普通模式(Normal) 用于移动光标、删除复制、撤销重做等操作。打开文件后默认就在该模式。
插入模式(Insert) 用于输入文本。按 i、a、o 等进入,按 Esc 返回普通模式。
命令行模式(Command-line) 用于保存退出、查找替换、设置选项等。普通模式下输入 : 进入。
三、常见启动语法
常用选项速查:
vim +10 file.txt:打开文件并定位到第 10 行vim +/ERROR app.log:打开后跳到第一个 ERRORvim -u NONE -N file.txt:不加载用户配置(排查配置问题常用)
四、最常用按键与命令
1. 模式切换
2. 光标移动(普通模式)
3. 编辑操作(普通模式)
4. 保存与退出(命令行模式)
五、查找与替换(高频)
1. 查找
2. 替换
说明:
常用变体:
六、实战示例
1. 快速修改 Nginx 配置并保存退出
vim /etc/nginx/nginx.conf
操作流程:
/worker_connections 查找配置项
2. 批量替换日志级别
在命令行模式执行:
逐条确认后保存,避免误替换。
3. 打开大日志并快速定位错误
直接跳到第一个异常位置,再配合 n 快速浏览后续异常。
七、常见问题与建议
为什么按键输入变成了 :wq 字符,而不是执行命令? 通常是还在插入模式。先按 Esc 回到普通模式再输入 :wq。
如何避免误操作? 先用 vim -R 只读打开,确认后再正常编辑;或先 :set number 打开行号,减少定位错误。
新手总是迷路怎么办? 记住最小闭环:i 进入编辑,Esc 退出编辑,:wq 保存退出,:q! 不保存退出。
八、总结
建议优先熟练这几组高频操作:
i / Esc:wq / :q!/关键字 + n / N:%s/old/new/gc
掌握这些后,你已经可以覆盖 80% 以上的日常文本编辑场景。后续再逐步学习寄存器、宏录制、分屏和插件体系即可。