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

Linux中,vi(vim)编辑器大部分快捷键

vi 编辑器是 Linux 系统中最常用的文本编辑器之一,核心特点是分为命令模式(默认进入模式,用于执行操作命令)和插入模式(用于输入文本),所有快捷键均需在命令模式下使用。以下按功能分类整理常用快捷键,结构清晰且标注详细用途。

一、模式切换快捷键(核心基础)

vi 的所有操作依赖模式,必须先掌握模式切换,否则快捷键无法生效。

快捷键操作说明适用场景
i命令模式进入插入模式,光标位置不变需在当前光标前直接输入文本时使用
I命令模式进入插入模式,光标跳转至当前行的行首需在一行开头输入内容(如行首加注释)时使用
a命令模式进入插入模式,光标跳转至当前字符的后一位需在光标后补充内容(如修正漏输字符)时使用
A命令模式进入插入模式,光标跳转至当前行的行尾需在一行末尾追加内容(如补全语句)时使用
o命令模式进入插入模式,在当前行的下方新建一行需在当前行下新增内容(如换行写新代码)时使用
O命令模式进入插入模式,在当前行的上方新建一行需在当前行上插入内容(如补充前置说明)时使用
Esc插入模式退回命令模式输入完文本后,需执行保存、删除等操作时必须按此键

二、光标移动快捷键(高效定位)

命令模式下,无需鼠标即可快速移动光标,分为 “基础移动” 和 “快速跳转” 两类。

1. 基础移动(逐字符 / 逐行)
快捷键操作说明
h光标向左移动 1 个字符(对应键盘左箭头)
j光标向下移动 1 行(对应键盘下箭头)
k光标向上移动 1 行(对应键盘上箭头)
l光标向右移动 1 个字符(对应键盘右箭头)
0(数字零)光标跳转至当前行的行首(比按多次h更高效)
$光标跳转至当前行的行尾(比按多次l更高效)
2. 快速跳转(跨行 / 跨文件)
快捷键操作说明示例
nG光标跳转至第n行(n为数字,如5G跳转到第 5 行)编辑代码时,需快速定位到指定行号(如报错行)
G光标跳转至文件最后一行查看文件末尾内容(如日志的最新记录)
gg光标跳转至文件第一行从文件中间快速回到开头
w光标向后跳转 1 个单词(以空格 / 标点分隔)快速浏览英文文档或代码变量
b光标向前跳转 1 个单词回退查看上一个单词
Ctrl + f屏幕向下滚动 1 屏(类似 “翻下页”)查看长文件时快速向下翻页
Ctrl + b屏幕向上滚动 1 屏(类似 “翻上页”)查看长文件时快速向上翻页

三、文本编辑快捷键(删除 / 复制 / 粘贴)

命令模式下的核心编辑操作,无需进入插入模式即可完成文本修改。

1. 删除操作(d = delete)
快捷键操作说明示例
x删除光标所在位置的 1 个字符修正单个错字(如把 “teh” 改为 “the”,删除 “e” 后补 “h”)
nx删除光标所在位置向后的 n 个字符n为数字,如3x删 3 个字符)删除连续错字(如 “abc123” 中删 “123”,按3x
dd删除光标所在的整行删除无用行(如空行、错误代码行)
ndd删除光标所在行向下的 n 行n为数字,如5dd删 5 行)批量删除多行内容(如删除一段无用代码)
d0删除光标所在位置到行首的所有字符清除行首到光标前的内容(如删除行首多余空格)
d$删除光标所在位置到行尾的所有字符清除光标后到行尾的内容(如删除行尾多余字符)
dw删除光标所在位置向后的 1 个单词删除错误的变量名或英文单词
2. 复制操作(y = yank,意为 “复制”)
快捷键操作说明示例
yy复制光标所在的整行复制一行代码或文本,后续粘贴
nyy复制光标所在行向下的 n 行n为数字,如3yy复制 3 行)批量复制多行内容(如复制一段函数代码)
y0复制光标所在位置到行首的所有字符复制行首到光标前的内容(如复制行首注释)
y$复制光标所在位置到行尾的所有字符复制光标后到行尾的内容(如复制行尾的变量)
yw复制光标所在位置向后的 1 个单词复制单个变量名或英文单词
3. 粘贴操作(p = put,意为 “粘贴”)
快捷键操作说明适用场景
p将复制的内容粘贴到光标所在行的下方复制一行后,在下方插入该内容
P将复制的内容粘贴到光标所在行的上方复制一行后,在上方插入该内容

四、文件保存与退出快捷键(操作收尾)

所有保存、退出操作均需在命令模式下执行,需先按Esc确保退出插入模式。

快捷键操作说明注意事项
:w保存当前文件(不退出 vi)编辑过程中定期保存,避免内容丢失
:w 文件名将当前内容另存为指定文件名(如:w test.txt需保存副本或重命名文件时使用
:q退出 vi(仅当文件未修改或已保存时生效)若文件未保存,执行此命令会提示 “E37: 已修改但尚未保存”
:q!强制退出 vi(不保存未修改的内容)确认放弃当前修改时使用,谨慎操作
:wq保存当前文件并退出 vi(等同于:x编辑完成后常用的 “保存并退出” 命令
ZZ(大写 Z 连按两次)快速保存并退出 vi命令模式下直接按,比输入:wq更高效

五、其他实用快捷键(查找 / 替换 / 撤销)

1. 文本查找
快捷键操作说明示例
/关键词从光标位置向后查找指定关键词(如/error查找 “error”)查找日志中的错误信息、代码中的变量
?关键词从光标位置向前查找指定关键词(如?test查找 “test”)从当前位置回退查找内容
n继续查找下一个匹配的关键词(与/?方向一致)找到一个匹配后,按n跳转到下一个
N继续查找上一个匹配的关键词(与/?方向相反)找到一个匹配后,按N回退到上一个
2. 文本替换(需输入命令,格式::[范围]s/旧内容/新内容/选项
命令操作说明示例
:s/旧/新仅替换当前行的第一个 “旧内容”当前行有多个 “abc”,仅替换第一个为 “def”::s/abc/def
:s/旧/新/g替换当前行的所有 “旧内容”(g=global,全局)当前行所有 “abc” 替换为 “def”::s/abc/def/g
:%s/旧/新替换整个文件的第一个 “旧内容”全文件第一个 “error” 替换为 “warning”::s/error/warning
:%s/旧/新/g替换整个文件的所有 “旧内容”全文件所有 “abc” 替换为 “123”::%s/abc/123/g
:n1,n2s/旧/新/g替换第 n1 行到第 n2 行的所有 “旧内容”替换第 5-10 行的 “test” 为 “demo”::5,10s/test/demo/g
3. 撤销与恢复
快捷键操作说明示例
u撤销上一步操作(类似 Windows 的Ctrl+Z误删一行后,按u可恢复该行
Ctrl + r恢复上一步被撤销的操作(即 “反撤销”)撤销后发现操作正确,按Ctrl+r恢复

总结

vi 快捷键的核心是 “命令模式优先”,需牢记先按 Esc 退插入模式,再执行快捷键。日常使用中,重点掌握 “模式切换(i/Esc)、光标移动(h/j/k/l/gg/G)、编辑(dd/yy/p)、保存退出(:wq/ZZ)” 即可满足基础需求,复杂操作(如替换、查找)可逐步熟悉。

http://www.dtcms.com/a/539880.html

相关文章:

  • ADUM5201CRWZ-RL双通道数字隔离器 ADI亚德诺半导体 集成电路IC芯片解析
  • Ubuntu texlive安装后无法编译中文论文解决方法
  • UniversalSmartStateFilter:统一状态过滤器的架构设计与实现
  • 四旋翼机器人手臂路径规划
  • 5G专网平台客户案例分享:基于可编程5G的智慧电网巡检原型系统
  • 做网站现在什么尺寸合适深圳刚刚突然宣布
  • 基于深度学习与OCR研发的报关单识别接口技术解析
  • Power Apps:预览SharePoint文档库的PDF文档
  • ElasticSearch-基础
  • 常州市网站制作娶妻为什么不娶外贸女
  • MySQL 窗口函数全解析:NTILE() 函数深度指南
  • 【大模型与智能体论文】REACT:协同语言模型中的推理与行动
  • 攻克兼容、安全、零中断的“不可能三角”:电科金仓异构多活架构交出集团化医院信创最佳答卷!
  • Duckdb rusty_sheet插件使用心得
  • PyTorch torch.ones()张量创建详解
  • 菜鸟教程网站建设lazy load wordpress
  • 湖南 中小企业 网站建设百度做网站推广
  • 基于小波变换的图像阈值去噪MATLAB实现
  • 网站建设怎么收费网站优化有哪些类型
  • GitHub 与 Gitee 多平台 SSH Key 配置指南
  • 中原郑州网站建设中国建设银行信用卡
  • c++学习学习学习
  • 可做影视网站的服务器黄骗免费网站
  • 做电影类网站在线做头像网站有哪些
  • 怎么创建网站 免费的高级seo课程
  • 删除wordpress修订版本号长沙seo网站建设袁飞最好
  • 天津中冀建设集团有限公司网站中企动力做的网站好吗
  • 公司网站建设技术方案c#网站开发需要的技术
  • 网络营销渠道具有交互性的特点企业seo排名优化
  • 国外做的比较好的展台网站怎样清除单位域名 网站或互联网网址