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

Linux-VI和VIM

目录

VI的使用

VI的三种模式

进入VI

切换至插入模式(Insert mode)编辑文件 

Insert 的切换 

退出VI及保存文件 

搜索

快捷删除

光标定位到最后一行

VIM查找字符串

全匹配

模糊匹配(正则表达式)

快速查找​​​​​​​


VI的使用

VI的三种模式

命令行模式(command mode): 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。 
插入模式(Insert mode):只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。 
底行模式(last line mode):将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。 
不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。 
 

进入VI

在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:

$ vi myfile 

进入vi之后,是处于「命令行模式(command mode)」,要切换到「插入模式(Insert mode)」才能够输入文字。

切换至插入模式(Insert mode)编辑文件 

在「命令行模式(command mode)」下按一下字母“i”就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。 

也可以点击字母“o”,表示进入插入模式,且另起一行。


Insert 的切换 

目前处于「插入模式(Insert mode)」,按一下「ESC」键可以转到「命令行模式(command mode)」。 


退出VI及保存文件 

在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如: 
: w filename (输入 「w filename」将文章以指定的文件名filename保存) 
: wq (输入「wq」,存盘并退出vi) 
: q! (输入q!, 不存盘强制退出vi) 

搜索

/检索词

大小写敏感

快捷删除

在命令行模式下

比如要删除两行,则按下2dd

比如要删除三行,则按下3dd

光标定位到最后一行

按下shfit+g

VIM查找字符串

全匹配

从上往下查找,比如“string” :   /string

从下往上查找,比如“string” : ?string  

模糊匹配(正则表达式)

. :通配1个字符 ,如匹配 server, 可以用  /se...r

* :通配多个字符,如匹配 privilege,可以用 p*ge

快速查找

Shift + * :让光标停留在想要查找的单词的任意一个字母上面, 然后输入 Shift + * ,即可快速选中该单词,并且通过 n  或  N 进行上一个或下一个的匹配。
yw :让光标停留在单词的第一个字母上, 然后输入yw拷贝该单词, 然后输入 / (Ctrl + R) 0 (即 /”0),回车, 就查找到了第一个匹配的单词, 并且通过 n  或  N 进行上一个或下一个的匹配。

相关文章:

Linux-VI和VIM

目录 VI的使用 VI的三种模式 进入VI 切换至插入模式(Insert mode)编辑文件 Insert 的切换 退出VI及保存文件 搜索 快捷删除 光标定位到最后一行 VIM查找字符串 全匹配 模糊匹配(正则表达式) 快速查找​​​​​​…...

【送书】实现可观测性平台的技术要点是什么?

文章目录 实现可观测性平台的技术要点是什么?兼容全域信号量所谓全域信号量有哪些?统一采集和上传工具统一的存储后台自由探索和综合使用数据总结 实现可观测性平台的技术要点是什么? 随着可观测性理念的深入人心,可观测性平台已经开始进入了落地阶段…...

AUTOSAR汽车电子嵌入式编程精讲300篇-车载网络 CAN 总线报文异常检测

目录 前言 国内外研究现状 车载网络 CAN 总线威胁分析和报文异常检测研究...

基于MUSIC算法的二维超声波成像matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1、基本原理 4.2、数学公式 4.3、实现过程 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 ..........................................…...

Linux0.11——第三回 做好访问内存的最基础准备工作

前面两回是把启动区的代码复制来复制去的,这里我们要讨论的就是操作系统怎么为程序访问内存的方式做初步规划的? 操作系统的代码最开头的 512 字节的数据,先从硬盘的启动区移动到了内存 0x7c00 处,然后又立刻被移动到 0x90000 处…...

unity自己对象池的使用

unity出了自己的对象池 这里记录一下用法 命名空间就是这个 一般有两种用法,第一种是在using里面获取,脱离这个域就释放。第二种是在Get和Release配合使用 // This version will only be returned to the pool if we call Release on it.//只有使用Re…...

el-image 和 el-table冲突层级冲突问题

其中原理,很多博客已经所过了,table组件中使用图片,会出现层级过低问题, 网上大部分解决方式是 使用穿透 // 单元格样式 ::v-deep(.el-table__cell) {position: static !important; }我在此不推荐这种解决方式,原因&a…...

6年Android开发前10月的总结,写给正在求职的安卓开发

进入大厂工作对许多人来说已经是一种挑战,但只要充分准备,很多问题都可以逐步解决。当然,运气也起到了一定的作用,但最终还是与自身的努力密不可分。运气是实力的一部分,因为自助者天助。 每到10月进行总结时&#xff…...

ConcurrentHashMap 的并发度是什么?

ConcurrentHashMap采用了一种基于分离链接的哈希表设计: 分离链接哈希表:在Java 8中,ConcurrentHashMap 内部使用了一个称为分离链接哈希表的数据结构。它的核心思想是,每个哈希桶(bucket)不再是一个单一的槽位,而是一个链表或红黑树(取决于链表的长度),用于存储具有…...

Redis 面霸篇:从高频问题透视核心原理

Redis 为什么这么快? 很多人只知道是 K/V NoSQl 内存数据库,单线程……这都是没有全面理解 Redis 导致无法继续深问下去。 这个问题是基础摸底,我们可以从 Redis 不同数据类型底层的数据结构实现、完全基于内存、IO 多路复用网络模型、线程…...

【100天精通Python】Day69:Python可视化_实战:导航定位中预测轨迹和实际轨迹的3D动画,示例+代码

目录 1. 预测的3D轨迹和实际轨迹的动画图,同时动态更新 2 真值轨迹设置为静态的,预测轨迹不断更新 3 网格的三维坐标系有旋转运动,以此全方位展示预测轨迹和真值轨迹之间的空间关系 1. 预测的3D轨迹和实际轨迹的动画图,同时动态更…...

MySQL中对varchar类型的列进行统计分析

需求1&#xff1a;如何在MYSQL中查找my_data列中所有<5%的数量&#xff0c;my_data为varchar类型 如果my_data列是varchar类型并存储为上面显示的格式&#xff08;如"28.62%“&#xff09;&#xff0c;那么在查找所有小于或等于5%的值时&#xff0c;我们首先需要去掉末…...

mysql索引最左前缀法则、使用场景

提示&#xff1a;mysql索引最左前缀使用的规则&#xff0c;以及索引失效和部分字段索引失效 文章目录 索引使用法则最左前缀法则 索引执行explain分析遵守联合索引最左前缀法则&#xff08;索引有效&#xff09;未遵守联合索引最左前缀法则&#xff08;索引失效或部分索引失效&…...

LeetCode75-06:移动零

移动零 初版(bug) func moveZeroes(nums []int) {if len(nums) 1{return}// 设置两个指针fp1,fp2分别指向第一个元素和第二个元素&#xff0c;// 两种情况// 假如指针fp1指向元素为零// 1) *fp2!0&#xff0c;则交换。// 2) *fp20&#xff0c;则fp2后移,直至*fp2!0,与fp1交换…...

C/C++统计满足条件的4位数个数 2023年5月电子学会青少年软件编程(C/C++)等级考试一级真题答案解析

目录 C/C统计满足条件的4位数个数 一、题目要求 1、编程实现 2、输入输出 二、解题思路 1、案例分析 三、程序代码 四、程序说明 五、运行结果 六、考点分析 C/C统计满足条件的4位数个数 2019年12月 C/C编程等级考试一级编程题 一、题目要求 1、编程实现 给定若干…...

python+nodejs+php+springboot+vue 校园安全车辆人员出入安全管理系统

本校园安全管理系统共包含15个表:分别是表现评分信息表&#xff0c;车辆登记信息表&#xff0c;配置文件信息表&#xff0c;家校互动信息表&#xff0c;监控系统信息表&#xff0c;教师信息表&#xff0c;留言板信息表&#xff0c;校园资讯信息表&#xff0c;人员登记信息表&am…...

针对discuz3.2的渗透测试

漏洞原理描述 https://zhuanlan.zhihu.com/p/51907363 想要利用这个漏洞得知道key的前缀&#xff0c;首先在注册的地方抓包 GET /member.php?modregister HTTP/1.1 Host: 103.108.67.223:8822 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/2010010…...

python的中秋之美

标题&#xff1a;Python的中秋之美&#xff1a;用代码感受传统佳节的魅力 引言&#xff1a; 中秋节&#xff0c;是中国传统的佳节之一&#xff0c;也是家人团聚、共度美好时光的时刻。作为一名Python程序员&#xff0c;我想通过编写代码来感受中秋节的美丽与独特。在这篇博客中…...

ClickHouse与Elasticsearch比较总结

目录 背景 分布式架构 存储架构 写入链路设计 Elasticsearch 再谈Schemaless 查询架构 计算引擎 数据扫描 再谈高并发 性能测试 日志分析场景 access_log&#xff08;数据量197921836&#xff09; trace_log&#xff08;数据量569816761&#xff09; 官方Ontime测…...

辅助驾驶功能开发-功能对标篇(12)-NOA领航辅助系统-合众

1.横向对标参数 厂商和众车型哪吒S上市时间2022方案11V5R3L+1DMS摄像头前视摄像头2*(8M)侧视摄像头4后视摄像头1环视摄像头4DMS摄像头1雷达毫米波雷达54D毫米波雷达/超声波雷达12激光雷达2*(华为96线,905nm)域控供应商1*(华为MDC610)辅助驾驶软件供应商自研TA PILOT高精度地图…...

5分钟掌握UEFI启动画面个性化:HackBGRT终极指南

5分钟掌握UEFI启动画面个性化&#xff1a;HackBGRT终极指南 【免费下载链接】HackBGRT Windows boot logo changer for UEFI systems 项目地址: https://gitcode.com/gh_mirrors/ha/HackBGRT 你是否厌倦了每次开机都看到单调乏味的厂商Logo&#xff1f;想要在启动时展示…...

Formbricks v3.5.0发布:移动端体验革命与缓存性能倍增

Formbricks v3.5.0发布&#xff1a;移动端体验革命与缓存性能倍增 【免费下载链接】formbricks Open Source Qualtrics Alternative 项目地址: https://gitcode.com/GitHub_Trending/fo/formbricks Formbricks作为一款开源的Qualtrics替代方案&#xff0c;在v3.5.0版本中…...

Mem Reduct多语言界面配置指南:从基础设置到高级应用

Mem Reduct多语言界面配置指南&#xff1a;从基础设置到高级应用 【免费下载链接】memreduct Lightweight real-time memory management application to monitor and clean system memory on your computer. 项目地址: https://gitcode.com/gh_mirrors/me/memreduct 功能…...

城通网盘下载加速终极解决方案:ctfileGet让你的文件传输速度提升10倍

城通网盘下载加速终极解决方案&#xff1a;ctfileGet让你的文件传输速度提升10倍 【免费下载链接】ctfileGet 获取城通网盘一次性直连地址 项目地址: https://gitcode.com/gh_mirrors/ct/ctfileGet 你是否还在为城通网盘下载速度缓慢而烦恼&#xff1f;每次下载大文件都…...

5步搞定Anything V5:Stable Diffusion二次元图像生成服务快速搭建

5步搞定Anything V5&#xff1a;Stable Diffusion二次元图像生成服务快速搭建 1. 项目概述 Anything V5是基于Stable Diffusion技术的高质量二次元图像生成模型&#xff0c;特别适合动漫风格内容创作。本教程将带您快速搭建一个完整的图像生成服务&#xff0c;支持Web界面和A…...

零代码体验LingBot-Depth:在线Demo快速生成3D深度效果图

零代码体验LingBot-Depth&#xff1a;在线Demo快速生成3D深度效果图 1. 引言&#xff1a;当普通照片“看”懂了三维世界 你有没有想过&#xff0c;一张普通的手机照片&#xff0c;除了记录下那一刻的色彩和构图&#xff0c;还能“记住”当时场景里每个物体离你有多远&#xf…...

OpenClaw安全防护指南:Qwen3-32B私有化部署下的权限管控策略

OpenClaw安全防护指南&#xff1a;Qwen3-32B私有化部署下的权限管控策略 1. 为什么需要关注OpenClaw的安全防护&#xff1f; 当我第一次把OpenClaw部署在自己的开发机上时&#xff0c;那种兴奋感至今记忆犹新——一个能帮我自动处理文件、整理资料、甚至写代码的AI助手&#…...

保姆级教程:在PHPStudy环境下复现CTFHub MySQL注入题(附WAF绕过Payload分析)

从零构建MySQL注入实验环境&#xff1a;PHPStudy靶场搭建与Quine攻击实战 第一次接触SQL注入时&#xff0c;我盯着屏幕上那个看似简单的登录框&#xff0c;完全无法理解黑客是如何通过几个特殊字符就能突破系统防线的。直到亲手搭建环境、逐行调试代码后&#xff0c;才真正明白…...

24小时无人值守:OpenClaw+Phi-3-vision-128k-instruct自动化监控系统

24小时无人值守&#xff1a;OpenClawPhi-3-vision-128k-instruct自动化监控系统 1. 为什么需要自动化监控系统 去年我负责一个内部数据看板项目时&#xff0c;经常遇到凌晨突发故障却无人值守的情况。直到第二天上班才发现问题&#xff0c;损失了宝贵的响应时间。传统监控工具…...

丹青识画系统GitHub协作开发指南:从代码克隆到PR提交全流程

丹青识画系统GitHub协作开发指南&#xff1a;从代码克隆到PR提交全流程 你是不是也遇到过这种情况&#xff1f;团队里几个人一起改代码&#xff0c;最后合并的时候发现冲突一大堆&#xff0c;张三改了李四的代码&#xff0c;王五的提交又把功能搞坏了&#xff0c;光是解决这些…...