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

vi编辑器

vi编辑器

VI(Visual)编辑器是一种在Unix、Linux及Mac OS X操作系统上广泛使用的文本编辑器。

vi/vim命令大全

在这里插入图片描述

vim命令进入和退出

进入vi编辑器指令:vim 文件名

扩展:
进入文件直接跳到多少行:vim +数字 文件名
打开上一次文件:vim ! 文件名
打开文件跳到要查找的字符行行首:vim +/字符 文件名

退出vi编辑器:先按esc键,然后再输入 : 键,然后输入 q 退出

扩展:
退出并保存:先按esc键,然后再输入 : 键,然后输入 wq 退出
强制退出:输入 : 键,然后输入 q ! 强制退出

vi编辑器三种模式

vi编辑器三种模式:

  • 命令模式:光标移动,使用快捷键 复制 粘贴 删除等基础操作
  • 输入模式:可以直接修改文件内容
  • 末行模式:保存,查找替换,显示行号,做一些软件的功能设置
    在这里插入图片描述

命令模式

命令模式是vi编辑器的默认模式,用于执行各种编辑命令,如移动光标、删除文本、查找替换等操作。在命令模式下,从键盘上输入的任何字符都被当作编辑命令来解释,而不会在屏幕上显示。
光标行之间的快速移动

命令含义
G跳转到最后一行
n G跳转到第 n 行
gg或GG跳转到第一行

光标在一行间的快速移动

命令含义
^或者0跳到一行的行首
$或者end跳转到一行的末尾
w一行之间单词的跳转
n w (n是数字)一行之间跳过n个单词

删除(剪切)

命令含义
x删除一个字符
d w删除一个单词
dd删除一行
n dd删除n行
d$删除到行尾
d^删除到行头

替换

命令含义
r替换单个字符
R进入替换模式

复制

命令含义
yw复制一个单词
yy复制一行
n yy复制n行

粘贴

命令含义
p粘贴到上一行
P粘贴到下一行

撤销

命令含义
u撤销一次
U撤销光标所有操作
ctrl + r撤销撤销

编辑模式

使 Vim 进行输入模式的方式是在命令模式状态下输入 i、I、a、A、o、O 等插入命令,当编辑文件完成后按 Esc 键即可返回命令模式。

快捷键功能描述
i在当前光标所在位置插入随后输入的文本,光标后的文本相应向右移动
I行首插入命令
o在光标所在行的下面插入新的一行。光标停在空行首,等待输入文本
O在光标所在行的上面插入新的一行。光标停在空行的行首,等待输入文本
a在当前光标所在位置之后插入随后输入的文本
A行尾插入命令

末行模式

将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号等。不过一般我们在使用时把vi简化成两个模式,就是将末行模式。

命令含义
q退出
wq保存退出
q!强制退出
w 路径/新的文件名另存为
set nu显示行号
/ 关键字查找关键字
nohl关闭关键字高亮
set list显示隐藏字符
查找替换

查找替换使用的是正则表达式
通式:范围(不写默认范围为当前行) s/要找的字符/替换的字符/修饰符

要找的字符可以用正则表达式来表示
替换的字符不可以用正则来表示,一定要是确定的字符
修饰符:g i c
分隔符可以是///也可以是@@@或者###


http://www.mrgr.cn/news/58564.html

相关文章:

  • react18中的jsx 底层渲染机制相关原理
  • IO多路复用小项目day01 ———— c语言版本
  • FAQ-为什么交换机发给服务器的日志显示的时间少8小时
  • Vue 3项目的性能监测和优化
  • Unity Avatar详解
  • table表格中内嵌表单案例
  • MySQL查看某个数据库里面每张表的字符集和字符排序集
  • 江协科技STM32学习- P21 ADC模数转换器
  • Isaac Sim Docker 部署并使用过程记录
  • 【数据结构和算法】二、python中的常用数据结构(数组、链表、堆栈、递归、二叉树、哈夫曼树等数据结构的基本原理讲解与实战演练)
  • 尼日利亚CRIA解析
  • c++实现boost搜索引擎功能扩展 介绍+代码(日志,处理暂停词,增加数据源,引入广告竞价,增加用户管理,连接mysql)
  • Nestjs请求处理顺序
  • 【信息系统管理工程师】与【信息系统项目管理师】傻傻分不清楚?一文说清楚
  • 谷歌开发者账号,为什么新号老是因为高风险被封?
  • 如何将原本打开Edge呈现出的360浏览器,更换成原本的Edge页面或者百度等其他页面
  • uniapp开发Web页面之动态菜单配置攻略
  • LEG引擎装备升级脚本,BLUE引擎传奇添加升级装备的NPC示例
  • 卷积神经网络评价指标
  • 客服的沟通技巧与策略
  • Sei 生态迎首个 MMORPG 游戏伙伴 Final Glory,开启新篇章
  • [Java进阶] 并发编程之进程、线程和协程
  • 23种设计模式
  • Vue3 + TypeScript 实现 iframe 嵌入与通信的完整指南以及全屏弹窗方案
  • 动态规划-子序列问题——376.摆动序列
  • 青训营 X 豆包MarsCode 技术训练营--最大矩形面积问题