[Linux] vi编辑器

命令模式&文本模式

命令模式就输入命令然后执行,文本模式就是系统把你的输入都当成写进文件里的字符

切换模式:

刚进入默认是命令模式,按:

i I a A o O

进入文本模式,

通过他们进入文本模式有什么不同?

然后按esc进入命令模式

命令模式:


退出:(命令模式基本就是用来保存退出,没有别的特殊的命令)
wq #write and quit

q  #quit,如果你对文件有修改,那么你q的时候会不让你q,你必须wq或者q!

q! #强制quit

光标移动(命令模式下):

hjkl,方向键左下上右

文本修改:

搜索字符串:

替换

不加g,就只替换每一行的匹配的第一个

文件恢复

swp文件,当打开vi时创建,关闭vi时删除,

如果出现异常情况,vi未正常关闭,则swp不被删除,

则下次再通过vi打开filea时,vi检测到swp,询问用户是否要恢复

vi操作符的域:

删除操作符和域:

文本模式:

没什么好说的

缓冲区:

一次编辑多个文件:

vi file1 file2 …… fileN

我这里有两个文件:

一次编辑这两个文件:

进入vi以后,首先编辑第一个文件:

编辑完了以后,切换到下一个文件,有两种命令:

n

e file2

这两种命令,都要求你已经对修改的第一个文件进行保存,如果没有保存,是不能切换的,no write since last change

可以先w一下,保存修改,

如果要放弃修改,可以

n!

e! file2

强制切换

查看当前正在编辑的文件

ar

中括号里就是当前正在编辑的文件

插入其他文件内容

r file1即可将file1中的内容插入到当前编辑的文件中

将文件部分写入其他文件

1,2 w file3

将当前正在编辑的文件的第1行到第2行,写入叫file3的文件中,如果file3不存在于当前目录,那么创建一个新文件,如果已经存在

那么必须

1,2 w! file3 强制覆盖

linux中的缓冲区,等同于windows系统中的剪贴板

d+p相当于剪切

y+p相当于复制

寄存器:

显示所有寄存器内容:regs(vi中)

vi中执行shell命令

可以就这样在vi的命令模式中输入!后跟一条指令,

然后系统会进入这样的等待状态:

按回车即可返回到vi编辑状态

可以把命令执行结果写入到文件中

r ! command

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/30257.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python 版本切换,更换当前默认版本

电脑可以安装多个版本,但是好像没有正规的维护python版本的工具,比如前端就有nvm切换node版本,但是python我没找到比较好的(有大佬知道路过方便留言一下,跪谢。。) 废话不多说,更改默认版本很简…

字节跳动万卡集群网络分析

从公开的信息披露,截至2023年9月,字节跳动已经建立超过一万张的英伟达Ampere架构GPU集群,目前正在建设Hopper架构的集群。英伟达Ampere架构主要包括A100和A800型号的芯片,Hopper架构相较前者则更新,主要包括H100和H800芯片 字节和北大公布的论文,关于网络拓扑的描述主要…

DIVE INTO DEEP LEARNING 36-49

文章目录 36. Data augmentation36.1 Training with enhanced data36.2 Enhancement measures36.3 Data augmentation summary 37. Fine tuning37.1 Fine tuning Introduce37.2 Fine tuning Step37.3 Fine tuning summary 38. Object detection38.1 Object detection38.2 Edge …

[Linux] Shell

chsh不是一种sh,而是一个命令行使用程序,用于更改默认shell CentOS是个开源软件,没有sh,sh是商业版的, 按ls /bin/*sh显示的sh实际上是个链接文件,连接的bash 在命令行输入新的sh名,会启动一个新的进程, 输…

厂里资讯之app端文章搜索

app端文章搜索 1) 内容介绍 文章搜索 ElasticSearch环境搭建 索引库创建 文章搜索多条件复合查询 索引数据同步 搜索历史记录 Mongodb环境搭建 异步保存搜索历史 查看搜索历史列表 删除搜索历史 联想词查询 联想词的来源 联想词功能实现 2) 搭建ElasticSearch环境 …

MyBatis系列七: 一级缓存,二级缓存,EnCache缓存

缓存-提高检索效率的利器 官方文档 一级缓存基本介绍快速入门Debug一级缓存执行流程一级缓存失效分析 二级缓存基本介绍快速入门Debug二级缓存执行流程注意事项和使用细节 mybatis的一级缓存和二级缓存执行顺序小实验细节说明 EnCache缓存基本介绍配置和使用EhCache细节说明 My…

SpringBoot整合Minio(支持公有及私有bucket)

😊 作者: 一恍过去 💖 主页: https://blog.csdn.net/zhuocailing3390 🎊 社区: Java技术栈交流 🎉 主题: SpringBoot整合Minio(支持公有及私有bucket) ⏱️ 创作时间&#xff1…

java多版本管理

一 java 多版本管理 使用 jenv, 地址:https://github.com/jenv/jenv mac 操作 brew install jenv# Shell: zsh echo export PATH"$HOME/.jenv/bin:$PATH" >> ~/.zshrc echo eval "$(jenv init -)" >> ~/.zshrc source ~/.zshrc需要…

张大哥笔记:如何选择一个人就值得做的副业

很多人喜欢把上班称为主业,把上班之外的工作称为副业,不管以哪种方式称呼都可以,只要能赚钱就行,上班的本质就是出卖时间,不管你是月入5000还是月入2万,都是给老板打工! 但搞笑的就是月入2万的人…

关于app爬虫的环境准备

摘要 有些数据需要在手机应用中才能查看,没有网页版,所以学习移动端的爬虫是有必要的。 手机系统分为安卓和苹果两大系统,本次讲解主要以安卓手机为例 有安卓手机的可以使用手机,没有的可以使用模拟器,本次以夜神模…

基于C++、MFC和Windows套接字实现的简单聊天室程序开发

一、一个简单的聊天室程序 该程序由服务器端和客户端两个项目组成,这两个项目均基于对话框的程序。服务器端项目负责管理客户端的上线、离线状态,以及转发客户端发送的信息。客户端项目则负责向服务器发送信息,并接收来自服务器的信息&#…

YAML 快速上手

文章目录 1.语法2.历史版本3.数据结构对象数组复合结构标量 4.引用5.文本块6.显示指定类型7.单文件多文档8.解析9.完整示例参考文献 YAML(YAML Ain’t a Markup Language)是专门用来写配置文件的语言,简洁强大,相比于 JSON 和 XML…

R包开发详细教程

开发一个R包可以帮助你组织和共享代码。以下是一个详细的步骤教程,介绍如何开发一个R包。 步骤 1: 准备工作 确保你已经安装了以下R包: install.packages("devtools") install.packages("roxygen2") install.packages("test…

[机器学习算法]决策树

1. 理解决策树的基本概念 决策树是一种监督学习算法,可以用于分类和回归任务。决策树通过一系列规则将数据划分为不同的类别或值。树的每个节点表示一个特征,节点之间的分支表示特征的可能取值,叶节点表示分类或回归结果。 2. 决策树的构建…

基于深度学习的图像压缩

基于深度学习的图像压缩 图像压缩是指将图像数据量减小的同时尽量保留其视觉质量的过程。传统的图像压缩方法(如JPEG、PNG等)已经广泛应用,但随着深度学习技术的发展,基于深度学习的图像压缩方法逐渐显现出其优越性。以下是一些关…

【AI原理解析】— Kimi模型

目录 一、技术背景与基础 二、核心技术特点 深度学习与神经网络: 超长上下文学习: 多模态对齐: 个性化调优: 知识增强: 推理优化: 三、模型架构 一、技术背景与基础 Kimi模型是一种基于深度学习和…

enum库

Python enum 模块教程 enum 是 Python 3.4 引入的一个模块,用于定义枚举类型。枚举类型是一种特殊的数据类型,由一组命名的值组成,这些值称为枚举成员。使用 enum 可以提高代码的可读性和可维护性,特别是在处理一组相关的常量值时…

Laravel 的事件监听器与服务提供者和服务容器的二三事

一. Laravel 的事件监听器与服务提供者和服务容器有密切的关系。 服务提供者用于注册服务、绑定依赖关系以及执行框架的初始化设置。在服务提供者的 register 方法中,可以注册事件和事件监听器。 服务容器则负责管理对象的创建和依赖注入。事件监听器通常会被注册…

人工智能和机器学习的应用日益广泛,在医疗健康领域的具体应用是什么?

人工智能(AI)和机器学习(ML)在医疗健康领域的应用日益广泛,涵盖了从疾病预测、辅助诊断、药物研发到健康管理等多个方面。以下是一些具体的应用实例和成功案例: 疾病预测与辅助诊断:机器学习算…

实现Spring Boot中多数据源配置的解决方案

🍁 作者:知识浅谈,CSDN签约讲师,CSDN博客专家,华为云云享专家,阿里云专家博主 📌 擅长领域:全栈工程师、爬虫、ACM算法 🔥 微信:zsqtcyw 联系我领取学习资料 …