Linux vi如何高效使用?

vi(或 Vim,Vi IMproved)是 Linux 系统内置的经典文本编辑器,以高效、轻量著称,掌握 vi 是 Linux 用户必备技能,以下为详细操作指南,涵盖基础到进阶技巧。


vi 的核心概念

vi 有两种核心模式,通过按键切换:

  1. 命令模式(默认):执行保存、退出、搜索等操作(启动后自动进入)。
  2. 插入模式:编辑文本内容(需从命令模式切换进入)。

基础操作流程

启动与退出

  • 启动文件
    vi filename.txt  # 新建或打开文件
  • 保存与退出(命令模式下)
    :w              # 保存
    :q              # 退出(未修改时)
    :wq             # 保存并退出
    :q!             # 强制退出(不保存修改)

模式切换

  • 命令模式 → 插入模式:
    i     # 光标前插入
    a     # 光标后插入
    o     # 下一行插入新行
  • 插入模式 → 命令模式:
    Esc 键(键盘左上角)。

高效编辑命令(命令模式下)

光标移动

h/j/k/l    # 左/下/上/右(替代方向键)
0          # 行首
$          # 行尾
gg         # 文件首行
G          # 文件末行
50G        # 跳转至第50行

文本编辑

x          # 删除光标处字符
dd         # 删除整行
5dd        # 删除5行
yy         # 复制当前行
p          # 粘贴到下一行
u          # 撤销操作
Ctrl+r     # 重做

搜索与替换

/word      # 向下搜索 "word"
?word      # 向上搜索
n          # 跳至下一个匹配项
:%s/old/new/g  # 全局替换 "old" 为 "new"

进阶技巧

  1. 分屏操作

    :sp filename   # 水平分屏
    :vsp filename  # 垂直分屏
    Ctrl+w + ↑↓←→  # 切换分屏
  2. 显示行号

    :set number    # 显示行号
    :set nonumber  # 隐藏行号
  3. 批量注释

    • Ctrl+v 进入块选择 → 选中多行 → 按 I 输入 → 按 Esc(适用于 Shell/Python 等)。

常见问题解决

  • 误入其他模式
    连续按 Esc 返回命令模式。
  • 文件权限不足
    :w !sudo tee % 保存需 root 权限的文件。
  • 恢复崩溃文件
    重启后输入 vi -r filename 恢复未保存内容。

学习建议

  1. 练习路径
    • 先掌握 iEsc:wq 等基础操作。
    • 逐步熟悉移动、删除、复制命令。
    • 尝试分屏和搜索替换。
  2. 交互教程
    终端输入 vimtutor 启动官方教程(约 30 分钟)。

引用说明

  • 参考 Vim 官方文档(vimdoc.sourceforge.net)。
  • 命令兼容 Vi 和 Vim(Vim 是 Vi 的增强版,现代 Linux 系统通常预装 Vim)。
  • 实践环境:Ubuntu 22.04 / CentOS 7 测试通过。

掌握 vi 需持续练习,初期可能不适应,但熟练后编辑效率远超图形工具,建议从日常编辑任务开始实践,逐步提升速度。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7184.html

(0)
酷番叔酷番叔
上一篇 2025年7月13日 06:52
下一篇 2025年7月13日 07:08

相关推荐

  • 如何快速启动MOVE命令?

    启动 MOVE 命令的常用方式包括:在命令行直接输入 MOVE 或 M;点击功能区“修改”选项卡中的“移动”按钮;通过菜单栏选择“修改”˃“移动”;或选中对象后右键单击选择“移动”。

    1天前
    400
  • 终端如何快速退出命令行?

    在命令行中退出当前会话,通常有三种方法: ,1. 输入 exit 命令后按回车。 ,2. 按快捷键 Ctrl + D(适用于大多数命令行环境)。 ,3. 对于卡住的进程,可按 Ctrl + C 强制终止。

    2025年6月18日
    1400
  • SVN命令行如何提升开发效率?

    安装与基础配置安装SVNWindows:下载 SlikSVN 或 TortoiseSVN(含命令行工具),Linux/macOS:终端执行: # Ubuntu/Debiansudo apt-get install subversion# macOSbrew install subversion配置用户信息首次使……

    2025年6月27日
    1300
  • SVN工作副本锁定如何快速解决?

    清理命令的作用与使用场景核心作用:解除工作副本的锁定状态(如 .svn 目录中的 lock 文件),恢复因意外中断(如 svn update 或 svn commit 中途失败)而损坏的本地副本,清除临时文件,修复状态错误(如执行操作时提示 “Working copy is locked”),典型使用场景:提交……

    6天前
    900
  • 如何查看电脑路由表

    route print命令用于显示Windows系统的IP路由表信息,列出网络目标地址、网关、接口及跃点数等关键路由配置,主要用于查看和诊断网络连接问题。

    2025年6月17日
    1600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信