如何用vi编辑器高效管理Linux系统?

启动与退出

  1. 启动文件
    vi filename  # 打开文件(若不存在则创建)
  2. 退出操作
    • 保存退出:命令模式下输入 :wq
    • 强制退出(不保存)::q!
    • 仅保存::w

核心模式切换

vi有三种模式,通过按键切换:

  • 命令模式(默认):进入vi时的初始模式,执行导航、删除等命令。
  • 插入模式:按 i(光标前插入)、a(光标后插入)、o(下方新行插入)进入文本编辑。
  • 末行模式:在命令模式下按 进入,执行保存、搜索等操作。

提示:按 Esc 键可随时返回命令模式。


基础编辑操作(命令模式下)

  1. 光标移动

    • h(左)、j(下)、k(上)、l(右)
    • 行首:0,行尾:
    • 跳至第n行::n(如 :10 跳至第10行)
  2. 文本操作

    • 删除字符:x
    • 删除整行:dd
    • 复制行:yy
    • 粘贴:p(光标后粘贴)或 P(光标前粘贴)
    • 撤销:u,重做:Ctrl + r
  3. 进入插入模式

    • i:光标前插入
    • A:行尾插入
    • O:当前行上方插入新行

高级功能

  1. 搜索与替换

    • 搜索:命令模式下输入 /keyword(按 n 跳至下一个结果)
    • 替换:末行模式输入 :%s/old/new/g(全局替换)或 :10,20s/old/new/g(替换10-20行)
  2. 显示行号

    • 临时显示::set number
    • 永久配置:创建 ~/.vimrc 文件并添加 set number
  3. 分屏操作

    • 水平分屏::sp filename
    • 垂直分屏::vsp filename
    • 切换窗口:Ctrl + w + 方向键

实用技巧

  • 重复操作:在命令前加数字(如 5dd 删除5行)。
  • 组合命令d$ 删除至行尾,yG 复制到文件末尾。
  • 查看状态Ctrl + g 显示文件名和行号。
  • 执行外部命令:末行模式输入 :!command(如 :!ls 查看目录)。

常见问题解决

  1. 误入插入模式无法操作:按 Esc 返回命令模式。
  2. 文件只读:用 :w !sudo tee % 强制保存(需sudo权限)。
  3. 恢复崩溃文件:重启后输入 vi -r filename

学习建议

  1. 运行 vimtutor 命令进行30分钟交互练习。
  2. 参考官方文档::help 或访问 Vim Documentation。
  3. 常用快捷键备忘:
    命令模式 → i/a/o → 插入模式  
    插入模式 → Esc → 命令模式  
    命令模式 → : → 末行模式

引用说明基于Vim 9.0官方手册及Unix系统管理标准实践,权威来源包括《Vi and Vim Editors Pocket Reference》(O’Reilly)及Linux man pages,操作已验证于Ubuntu 22.04/CentOS 7环境。

掌握vi需反复练习,初期可能不适应模式切换,但熟练后编辑效率远超图形工具,建议从基础命令开始,逐步探索高级功能。

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

(0)
酷番叔酷番叔
上一篇 2025年7月12日 20:06
下一篇 2025年7月12日 20:27

相关推荐

  • 如何快速打开Win10命令菜单?

    Windows 10中,按Win+R键可快速打开“运行”对话框执行命令;按Win+X键或右键单击开始按钮可访问“高级用户菜单”,内含常用系统工具和管理选项。

    1天前
    300
  • 十段s扫描器运行CMD窗口闪退如何解决

    十段s扫描器运行时CMD窗口快速消失,通常是因为程序执行出错(如参数错误、目标不可达、权限不足)或自身运行完毕退出,也可能是系统兼容性问题、依赖文件缺失或被安全软件拦截导致异常终止。

    2025年6月26日
    1100
  • 如何快速定位问题并系统解决?

    当Photoshop(PS)中的命令或工具无法正常使用时,通常由软件冲突、设置错误、文件损坏或系统限制导致,请按以下顺序逐步排查,90%以上的问题可得到解决:基础检查(5分钟快速排查)验证操作对象→ 确认当前图层是否被锁定(检查图层面板锁形图标)→ 检查图层类型(文字图层/智能对象/背景层需右键栅格化或解锁……

    6天前
    700
  • 如何彻底清除Mac命令记录?

    清除终端(Terminal)命令历史记录方法 1:通过命令直接清除(推荐)打开 终端(应用程序 > 实用工具),输入以下命令并回车:history -c # 清除当前会话历史rm ~/.bash_history # 删除默认的 bash 历史文件(Bash 用户)rm ~/.zsh_history # 删……

    3天前
    600
  • 命令提示符管理员权限打不开怎么办?

    以管理员身份启动命令提示符需通过开始菜单搜索”cmd”,右键单击结果并选择”以管理员身份运行”,确认UAC提示后即可获得更高权限的命令行环境。

    4天前
    500

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信