1. 为什么需要掌握vi/vim
在终端环境下工作时,vi/vim几乎是每个开发者的必备技能。这个诞生于1976年的文本编辑器,至今仍是Linux系统的标配工具。我刚开始接触命令行时,面对这个没有图形界面的编辑器完全不知所措,直到掌握了它的核心操作逻辑才发现其精妙之处。
与常规编辑器不同,vi采用模式化设计:
- 普通模式(Normal mode):执行命令和导航
- 插入模式(Insert mode):实际输入文本
- 可视模式(Visual mode):选择文本块
- 命令行模式(Command-line mode):执行保存等操作
这种设计让双手无需离开键盘就能完成所有编辑工作。服务器维护、配置文件修改、日志查看等场景下,vi/vim往往是唯一可用的编辑器。下面我将从实际工作场景出发,分享最实用的操作技巧。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 基础导航与编辑
2.1 启动与模式切换
启动vim只需在终端输入:
bash复制vim 文件名
初次使用时最容易困惑的是模式切换:
- 按
i进入插入模式(左下角显示-- INSERT --) - 按
Esc返回普通模式 - 普通模式下按
:进入命令行模式
提示:如果不确定当前模式,连续按两次
Esc必定能回到普通模式
2.2 高效移动光标
普通模式下这些移动命令最常用:
code复制h 左移
j 下移
k 上移
l 右移
w 跳到下一个单词开头
b 跳到上一个单词开头
0 跳到行首
$ 跳到行尾
gg 跳到文件开头
G 跳到文件末尾
记忆技巧:h/j/k/l对应方向键左/下/上/右,w(word)和b(back)与单词相关,$类似正则表达式表示行尾。
2.3 文本编辑基础操作
普通模式下这些命令组合能完成大部分编辑:
code复制x 删除当前字符
dd 删除当前行
yy 复制当前行
p 粘贴
u 撤销
Ctrl+r 重做
实际案例:要删除第3-5行并粘贴到第10行后:
- 移动到第3行(输入
3G) - 输入
3dd删除3行 - 移动到第10行
- 按
p粘贴
3. 高效编辑技巧
3.1 搜索与替换
快速定位内容:
code复制/关键词 正向
