当前位置: 首页 > news >正文

MacBook 终端中使用 vim命令

在 MacBook 终端中使用 vim 编辑器时,以下是一些常用命令和操作指南:


1. 基本操作

启动 vim
vim 文件名  # 打开或创建文件
退出 vim
  • 保存并退出
    • Esc,然后输入 :wq,按 Enter
  • 不保存退出
    • Esc,然后输入 :q!,按 Enter
  • 仅保存不退出
    • Esc,然后输入 :w,按 Enter

2. 模式切换

  • 命令模式(默认)
    • Esc 进入命令模式,可以执行保存、退出等操作。
  • 插入模式(编辑文本)
    • i 进入插入模式(光标前插入)。
    • a 进入插入模式(光标后插入)。
    • o 在当前行下方插入新行并进入插入模式。
    • O 在当前行上方插入新行并进入插入模式。

3. 光标移动

  • 基本移动
    • h:左移。
    • j:下移。
    • k:上移。
    • l:右移。
  • 快速移动
    • 0:移动到行首。
    • $:移动到行尾。
    • gg:移动到文件开头。
    • G:移动到文件末尾。
    • :行号:跳转到指定行(如 :10 跳转到第 10 行)。

4. 文本编辑

  • 删除
    • x:删除光标处的字符。
    • dd:删除当前行。
    • dw:删除从光标到单词末尾。
  • 复制与粘贴
    • yy:复制当前行。
    • p:粘贴到光标后。
    • P:粘贴到光标前。
  • 撤销与重做
    • u:撤销上一次操作。
    • Ctrl + r:重做撤销的操作。

5. 搜索与替换

  • 搜索
    • /关键词:向下搜索(如 /hello)。
    • ?关键词:向上搜索。
    • n 跳转到下一个匹配项,N 跳转到上一个匹配项。
  • 替换
    • :%s/旧文本/新文本/g:全局替换(如 :%s/foo/bar/g)。
    • :%s/旧文本/新文本/gc:全局替换并确认。

6. 多文件操作

  • 打开多个文件
    vim 文件1 文件2  # 同时打开多个文件
    
  • 切换文件
    • :n:切换到下一个文件。
    • :N:切换到上一个文件。
    • :ls:列出所有打开的文件。
    • :b 编号:切换到指定编号的文件(如 :b 2)。

7. 分屏操作

  • 水平分屏
    • :sp 文件名:水平分屏打开文件。
  • 垂直分屏
    • :vsp 文件名:垂直分屏打开文件。
  • 切换分屏
    • Ctrl + w + h/j/k/l:切换到左/下/上/右分屏。
    • Ctrl + w + w:循环切换分屏。

8. 其他实用命令

  • 显示行号
    • :set number:显示行号。
    • :set nonumber:隐藏行号。
  • 保存并退出所有文件
    • :xa:保存所有文件并退出。
  • 重新加载文件
    • :e!:放弃更改并重新加载文件。

总结

操作命令说明
保存并退出:wqZZ保存更改并退出
强制退出(不保存):q!放弃更改并退出
插入模式ia进入插入模式
删除当前行dd删除当前行
复制当前行yy复制当前行
粘贴pP粘贴到光标后或前
搜索/关键词向下搜索
全局替换:%s/旧/新/g替换所有匹配项
分屏:sp:vsp水平或垂直分屏

掌握这些命令后,你就能高效使用 vim 编辑文件了!如果需要更深入学习,可以查看 vim 的内置教程:

vimtutor  # 在终端运行 vim 教程

相关文章:

  • 洛谷————P11559 【MX-X7-T0】[LSOT-3] 嗯欧哎
  • STM32G431RBT6——(2)浅析Cortex-M4内核
  • gimp使用教程
  • Ollama download DeepSeek Local Install
  • 网络变压器的主要电性参数与测试方法(2)
  • 阿里云物联网获取设备属性api接口:QueryDevicePropertyData
  • 基于反激电路的电池充放电均衡控制
  • 解决linux mobaxterm unable to open connection to comx 串口正常连接,但终端无法输入的问题
  • 机试准备第4天
  • Pytorch使用手册—使用TACOTRON2进行文本到语音转换(专题二十四)
  • Android Studio 新版本Gradle通过JitPack发布Maven仓库示例
  • unity lua属性绑定刷新
  • 【愚公系列】《鸿蒙原生应用开发从零基础到多实战》004-TypeScript 中的泛型
  • 【计算机网络】传输层协议(UDP TCP)
  • 如何用python画一棵分形树
  • java后端开发day23--面向对象进阶(四)--抽象类、接口、内部类
  • Chromium_src源码
  • 【uniapp-Vue3】beforeRegister在注册用户入库前设置初始用户
  • 第四章 数据库安全性
  • 如何配置redis.conf才能远程访问
  • 网站集约化建设 技术/网络关键词优化方法
  • 洛阳做网站/网站查找工具
  • 凡科做网站需要备案吗/中文域名交易网站
  • 轻松做网站/网络推广员的工作内容和步骤
  • 网站建设与网站主机的选择/百度网站介绍
  • dedecms做企业网站/免费合作推广