linux的开发工具vim

目录

vim是什么

vim的基本操作

vim正常模式的命令集

vim底行模式命令集


vim是什么

vim是一个高度可配置的文本编辑器,旨在实现高效的文本编辑,它有六种基本模式:普通模式、插入模式、可视模式、选择模式、命令行模式和替换模式。其中,普通模式、插入模式和命令行模式是最常用的。

在这里主要讲解普通模式、插入模式、命令行模式

  • 正常/普通/命令模式

所有按键都是命令,通过控制光标的移动,进行字符、字或行的删除,移动复制某区段及进入插入模式或进入底行模式

  • 插入模式

像普通文本编辑器一样输入文字,按【ESC】键可以回到普通模式,这一模式是我们后面使用最频繁的编辑模式。在命令模式下按i可进入插入模式

  • 命令行模式/底行模式/末行模式

在底部输出命令执行。在这一模式下进行文本的保存或退出,也可以进行文字替换,找字符串等操作。在命令模式下按"shift+;"可进入底行模式。

想要查看所有的模式可以在底行模式输入help vim-modes

vim的基本操作

  • 进入vim,在系统提示符后面输入vim+文件名称后,可进入vim全屏编辑画面(进入vim后,默认出入正常模式,只有进入插入模式才能输入文字)
  • 【正常模式】切换为【插入模式】:输入a/i/o
  • 【正常模式】切换为【底行模式】:shift+;
  • 【插入模式】或【底行模式】切换为【正常模式】:按esc
  • 退出vim及保存文件,这需要进入底行模式进行:'w'(保存当前文件);'wq'(保存并退出vim);'q!(不保存强制退出vim)

vim正常模式的命令集

  • 移动光标
  • vim可以通过键盘中↑↓←→控制光标的移动,但正规的操作则是用小写英文字母'h'、'j'、'k'、'l',分别控制光标左下上右移动
  • 'G(shift+g)':移动到文本的最后
  • 'gg':移动到文本的开始
  • '$(shift+4)':移动到光标所在行的行尾
  • '^(shift+6)':移动到光标所在行的行首
  • 'w':光标移动到下一个字的开头
  • 'e':光标移动到下一个字的字尾
  • 'b':光标移动到上一个字的开头
  • '#|(|是shift+\)':光标移动到当前行的第#个位置,其中#是一个数字
  • 'ctrl+b':屏幕往上移动一页
  • 'ctrl+f':屏幕往下移动一页
  • 'ctrl+u':屏幕往上移动半页
  • 'ctrl+d':屏幕往下移动半页
  • 删除
  • 'x':删除光标所在位置的一个字符
  • '#x':删除光标所在位置及后面的#个字符(包含'自己'在内)
  • 'X':删除光标所在位置的前面的一个字符
  • '#X':删除光标所在位置的前面的#个字符
  • 'dd':删除光标所在行
  • '#dd':从光标所在行开始删除#行
  • 复制
  • 'yw':将光标所在位置到字尾的字符复制到缓冲区
  • '#yw':复制#个字到缓冲区
  • 'yy':复制光标所在行到缓冲区
  • '#yy'复制从光标所在行开始向下数#行文字
  • 'p':将缓冲区内的字符粘贴到光标所在位置
  • 替换
  • 'r':替换光标所在位置的字符
  • 'R':替换光标所到之处的字符,直到按esc结束
  • 撤销上一次操作
  • 'u':可以回到上一个操作,可以多次执行
  • 'ctrl+r':撤销恢复
  • 更改
  • 'cw':更改光标所在之处的字,直到字尾
  • 'c#w':更改#个字
  • 调到指定行
  • 'ctrl+g':列出光标所在行的行号
  • '#G':移动光标至第#行

vim底行模式命令集

  • 列出行号
  • 'set nu':在文件中的每一行前面列出行号
  • 跳到文件中的某一行
  • '#':#表示一个数字,在底行模式下,在:后面输入一个数字后按回车即可跳转至该行
  • 查找字符
  • '/关键字':在底行模式下,先输入/,再输入想要搜索的字符,如果找到的不是你想要的可以按n向后找。/是向下查找
  • '?关键字':在底行模式下,先输入?,再输入想要搜索的字符,如果找到的不是你想要的可以按n向前找。?是向上查找
  • 保存文件
  • 'w':在:后面直接输入字母w即可保存文件
  • 退出vim
  • 'q':在:后面输入q就可以退出vim,如果无法退出,可以再q后面加一个!,强制退出vim。建议退出时搭配'w'使用
相关推荐
zh路西法20 小时前
【RDKX5多摄像头模型推理】USB带宽限制与ROS2话题零拷贝转发
linux·c++·python·深度学习
KnowSafe20 小时前
2026年证书自动化解决方案选型指南
运维·安全·自动化·ssl·itrustssl
ZGi.ai20 小时前
企业Agent编排实战:条件分支+并行执行+异常处理全覆盖
运维
计算机安禾21 小时前
【Linux从入门到精通】第47篇:SystemTap与eBPF——Linux内核观测的显微镜
java·linux·前端
wanhengidc21 小时前
可持续性 云手机运行
运维·服务器·网络·安全·智能手机
王琦031821 小时前
第二章 chrony服务器
运维·服务器
mifengxing21 小时前
操作系统(四)
linux·服务器·网络·操作系统
钟智强21 小时前
潜伏 9 年的 Linux 核弹级漏洞:CopyFail CVE-2026-31431
linux·数据库·web安全
HUGu RGIN21 小时前
Linux部署Redis集群
linux·运维·redis
先知后行。21 小时前
Linux 内核驱动 —— 锁机制
linux·运维·服务器