精通Linux中的编辑器(非常详细!!!)

server/2024/12/4 3:56:30/

今天我们来说一下编辑器……

Linux中的编辑器

vi:是一个文本编辑器,用于撰写文档,或者开发程序。

vim:是vi的增强版功能一致,可视化效果更好一些。去鼠标化编辑更加方便可定制化

 注意:vim编辑器是一个模式化文本编辑器工具

编辑器中有三种常用的模式:

编辑模式、插入模式、末行模式

编辑模式 

复制内容:#(数字)       

单行复制:yy
多行复制:#yy

剪切内容(也可以是删除):

   

        单行剪切:dd多行剪切:#dd剪切(删除)光标之前的一个字符到行首的内容:d0光标到行尾的内容:d$光标到行尾的内容:D删除光标所在行到最后一行:dG删除光标所在位置的词组:dw        (注意:光标得在词组的第一个符号位置才可以删除词组否则只删除该单词)

粘贴内容:p

移动光标:

        h:左移光标l:右移光标j:下移光标k:上移光标H:移动到当前屏幕的第一行,注意不是文档的第一行L:移动到当前屏幕的最后一行,注意不是文档的最后一行M:移动当前屏幕中间行

 翻页快捷键:

ctrl+f        上翻一页

ctrl+b        上翻一页

ctrl+d        上翻半页

ctrl+u        下翻半页

#G:数字+G,定位到文档指定行
G:定位到文档的最后一行
gg:定位到文档的第一行
w:跳转到最后一个词组的首字母
x:删除一个字符

撤销操作:

u:撤销上一步操作(最多可以撤销50条)
ctrl -r:撤销撤销操作(回复撤销内容)
点(.)重复上一步的操作

插查询功能:

输入/ str 搜索功能(str代表搜索的内容)

n:向下跳转一个搜索到的关键词

N:向上跳转一个搜索到的关键词

插入模式:

切换到插入模式的时候左下角会出现INSERRT单词

进入插入模式的方式:

i  -->  表示在光标前进行插入内容
a  -->  表示在光标后进行插入内容、
o  -->  表示在光标前行的下一行进行编辑
I  -->  表示在行首进行插入内容
A  -->  表示在行尾进行插入
O  -->  表示在光标所在的行的上一行插入新行进行插入内容

末行模式:

作用:用于执行一些命令或者与bash进行交互,或者执行一系列自动化指令

进入末行模式:切换到编辑模式才可以换成末行模式esc切换到编辑模式shift+:进入末行模式

保存:w
退出:q
保存退出:wq
强制保存退出:wq!
强制退出:q!
保存退出快捷方式:x 、zz 或者 shift+zz
命令执行:!command [option] 参数
读取命令执行结果:r !conmmand [option] 参数
读取其他文件的内容:r /路径/文件名
显示行号:set nu
取消高亮:nohl
查找替换功能:指定范围查找::start,stop s/查找内容/替换内容/gstart:起始行  stop:结束行  g:表示全部替换(不写默认是每行只替换第一个)  %:表示全文搜索
特殊替换:就是替换/
这时格式中的就得用别的特殊符号
设置tab缩进4个字符:set tabstop=4
复制指定范围到n行下:start,stop co n
删除指定行:start,stop d
移动指定行下面:start,stop m n

 注意:如果想打开文件就显示行号或者查询不显示高亮可以在vim中的配置文件中加上这两个

显示行号:        :set nu

显示高亮:        :syntax on

保存退出即可

替换模式(不常用):

        R:进入替换模式,esc退出

        r:当替换一个字符后自动退出

注意:插入模式不可直接切换到末行模式下

vi的崩溃缓存机制

如果vi打开的文件没有关闭,则会在文件的位置下生成缓存文件,文件名的格式是:.文件名.sw什么的隐藏文件

基于崩溃缓存文件恢复成原始文件的过程:

1、用vi -r 崩溃缓存文件        打开后保存退出

2、用vi打开原始文件

确定恢复后,就可以把崩溃缓存文件删了;如果在崩溃缓存文件中无法保存就可需要加上!号

注意:vi的配置文件

~/.vimrc:每一个用户都有自己的配置文件,设置只对当前用户生效

/etc/vimrc:这是全局配置文件,对所有用户都生效(不建议更改)

vi补充:

Vi打开文件的时候:

         如果文件存在,就是修改现有文件

        如果文件不存在,就是创建一个新的空文件

        如果vi打开出现无法保存的情况,就要看看打开的是不是一个目录

下次咱们说配置网络……


http://www.ppmy.cn/server/41752.html

相关文章

Kafka基础架构详解

Kafka基础架构 Kafka概述 1. Producer(生产者): 生产者是向 Kafka broker 发送消息的客户端。它负责将消息发布到指定的主题(Topic),并可以选择将消息发送到特定的分区(Partition&#xff09…

phpmyadmin配置文件权限错误

错误信息 配置文件权限错误,不应任何用户都能修改! 解决办法 找到phpmyadmin所在目录 给phpmyadmin目录授权755 chmod -R 755 phpmyadmin验证服务是否可以正常访问

流媒体服务器(20)—— mediasoup 之媒体流score评分计算(一)

目录 前言 正文 《流媒体服务器》专栏总览丨蓄力计划_开源流媒体服务器对比-CSDN博客 前言 mediasoup 有一套评估媒体传输通道优劣的机制,主要是通过 score 评分来判断的。今天就先介绍一下这个机制的大体逻辑,后面的文章再详细介绍具体计算的算法。 正文 mediasoup 的…

【MySQL 数据宝典】【事务锁】- 002 事务控制的演进

一、事务处理思路 1.1 排队 排队处理是事务管理最简单的方法,就是完全顺序执行所有事务的数据库操作,不需要加锁,简单的说就是全局排队。序列化执行所有的事务单元,数据库某个时刻只处理一个事务操作,特点是强一致性…

【递归、回溯和剪枝】综合训练<二>

1.组合总和 组合总和 解法一&#xff1a; class Solution { public:vector<vector<int>> ret;vector<int> path;int aim;vector<vector<int>> combinationSum(vector<int>& nums, int target) {aim target;dfs(nums, 0, 0);return …

java mybatis-plus配置相关属性

MyBatis Plus是一个在MyBatis基础上进行封装的增强工具&#xff0c;简化了MyBatis的开发流程&#xff0c;提供了更多的便捷功能。 首先&#xff0c;你需要在maven中添加MyBatis Plus的依赖&#xff1a; <dependency><groupId>com.baomidou</groupId><ar…

IT行业现状与未来趋势分析

IT行业现状与未来趋势显示出持续的活力和变革&#xff0c;以下是上大学网&#xff08;www.sdaxue.com&#xff09;关于IT行业现状与未来趋势分析&#xff0c;供大家参考。 当前现状&#xff1a; 市场需求持续增长&#xff1a;随着信息时代的深入发展&#xff0c;各行各业对信息…

何为基差?股指期货的升水和贴水又怎么理解?

基差是一个金融术语&#xff0c;它指的是现货价格和期货价格之间的差额。在股指期货市场中&#xff0c;现货就是指实际的股票指数&#xff0c;而期货则是基于这个指数未来某个时间点的价格预期。基差可以是正的或负的&#xff0c;具体取决于期货价格是高于还是低于现货价格。 1…