“Linux”的vi / vim目录编辑器

news2024/10/5 21:14:35

     在前面中我们了解到Linux中的基础命令,20多个命令每个记住格式是:命令  选项   参数或者文件名,下面在了解一下最后两个命令:tree命令和find命令

一、补充的命令

(1)tree

作用:以竖状显示文件

格式:tree  目标目录

如果没有命令格式,去yum源下载命令

安装命令:yum install tree -y

 

(2)find命令

作用:查找 / 搜索

格式: find  搜索目录 搜索条件 执行的动作

 linux中搜索文件有两种个命令

locate:速度很快,但是结果不准确
linux中维护了一个数据库,数据库中记录了系统中的每个文件的文件名和文件的保存路径,这个数
据库每天早上更新一次。
locate搜索文件的时候,就是去检索数据库中 的记录,所以搜索速度快
find:速度慢,但是结果精准
find搜索文件的时候,就是逐一检查目录及其子目录中的文件

 搜素指定位置

/ :搜索根号底下所有的目录路径

/etc/ :etc 底下所有的目录路径

/  home : home底下所有的目录路径

 搜索条件:指定根据什么条件进行搜索

-name: 根据文件名搜索

-name 名称.txt 搜索关于这个名称.txt的相关内容

-size :根据文件大小搜索   

n:表示文件的大小,后面跟上的是单位,常用的单位有如下
‘b’ for 512-byte blocks (this is the default if no suffix is
used)
‘c’ for bytes
‘w’ for two-byte words
‘k’ for Kilobytes (units of 1024 bytes)   比如:1kb
‘M’ for Megabytes (units of 1048576 bytes)   比如:1mb
‘G’ for Gigabytes (units of 1073741824 bytes)  比如: 1Gb
如果不指定单位类型,那么默认是以字节为单位

-perm:根据文件权限进行搜索

-type:根据文件的类型进行查找

d :目录类型文件
f :一般文件
l :连接文件-
执行的动作:找到文件之后的操作
-print:显示找到的文件
-exec :找文件后执行下一个命令
比如:find a.txt -exec cp /位置
okkkkkkkkkkk。我们的命令到此完成

二、vi / vim编辑器

vi是一个文本编辑器,可以改写文档或开发程序

vim是vi的升级版,功能差不多,比vi好一点,去鼠标化,编辑更方便。

区别:vi 是固定的没有其他颜色,vim编辑时会有区分颜色。


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

模式一 :编辑模式(进入文本后的默认模式)

作用:删除,复制,剪切,粘贴,替换字符

(1)复制

前提:本操作的#号代表数字表示井号
复制内容:
    单行复制:yy
    粘贴    :p
    多行复制:#yy

(2)剪切、删除

前提:本操作的#号代表数字表示井号
     你剪切之后不去复制就是删除
剪切、删除:
    单行剪切(删除): dd
    多行剪切(删除):#dd
    在光标之前的字符到行首的内容删除:d0
    光标到行尾的内容删除:d$ 或者大写 D
    删除光标所在位置的单词:dw
    光标删除到最后:dG
   

(3)移动光标

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

文件多时用翻页
    下翻一页:ctrl+f
    上翻一页:ctrl+b
    上翻半页:ctrl+d
    下翻半页:ctrl+u

(4)定位

前提:本操作的#号代表数字表示井号
    #G :数字加G,定位到文档指定行
    G:定位到文档最后一行
    gg:定位到文档第一行
    w:跳转到后一个单词词首
    b:向前跳转一个单词
    x:删除一个字符
    u:撤销上一步操作
ctrl+r:撤销撤销上一步操作

(5)查询功能

输出 / 单词 搜索功能

选项: 

n :向下跳转一个关键词

N:向上跳转一个关键词

模式二:插入模式

进入插入模式后,左下角会显示一个insert单词

注意:插入模式并不能直接进入末行模式

作用:编辑文本内容

进入插入模式的方式

i :在光标前进行插入内容
a :在光标后进行插入内容
o :在光标下一行进行插入内容
I :在行首进行插入
A :在行尾进行插入
O :在光标上一行进行插入

模式三:末行模式

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

注意:末行模式不能直接进入插入模式

进入末行模式:

保存:w
退出:q
保存退出:wq
强制保持退出:wq!
强制退出:q!
保存退出的快捷键方法:x ZZ shift+zz
命令执行:!命令【comand】选项{option} 参数
读取命令执行结果:r !命令【comand】选项{option} 参数
设置行号:set nu
取消高亮:nohl
复制开始行到结束行到行数下:start数,stop数 co 数
开始行数到结束行数删除:start数,stop数 d 数

查找替换功能:

前提:g表示全部替换,百分号%表示全文

指定范围替换:start数,stop数 s/要替换内容/替换内容/g
替换全文:% s/要替换内容/替换内容/g
特殊替换:% s#/要替换内容#@替换内容#g #特殊符号分开(不是数字了)

模式四:替换模式

进入方法:大写R
退出方法:Esc
单个替换保存:r


同时打开多个文件方式:

水平面打开多个文件:vim -o【数字】文件1 文件2.........

垂直方向打开多个文件:vim -O【数字】文件1 文件2.......


vim的配置文件的使用

配置文件的位置
全局配置文件 /etc/vimrc ,作用范围是系统当中所有的用户 一般情况不建议使用
用户配置文件 位置是在当前用户的家目录下 .vimrc ,建议使用的文件。
注意:用户vim配置文件有可能不存在需要手工创建


vi的崩溃缓存机制

如果vi打开的文件没有关闭,则会在文件的位置下生成缓存文件,文件名格式:.文件名.swp
基于崩溃缓存文件恢复原始文件的过程:
1.vi -r 崩溃缓存文件
打开后保存退出即可
2.vi打开原始文件
确认恢复后,如果恢复成功后,则可以删除崩溃缓存文件
在删除崩溃缓存文件之前,原始文件无法直接保存,需要使用!
okkkkkkkkk  vi、vim的学习下机

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

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

相关文章

什么是BI看板?选择BI看板制作工具时一定要考虑这些方面

BI看板也称为商业智能仪表板,是一种直观的数据可视化工具,它将关键业务指标(KPIs)和数据以图表、图形和表格的形式集中展示,使用户能够快速获取企业运营的实时概览。 这种数据可视化方式不仅使得复杂的数据信息易于理…

【环境安装】nodejs 国内源下载与安装以及 npm 国内源配置

前言 Node.js 是一个基于 Chrome V8 引擎构建的 JavaScript 运行时环境,它能够使 JavaScript 在服务器端运行。它拥有强大的包管理器 npm,使开发者能够轻松管理和共享 JavaScript 代码包。 在中国,由于众所周知的原因,我们可能会…

Salesforce AI研究: 从奖励建模到在线RLHF工作流

摘要 该研究在本技术报告中介绍了在线迭代基于人类反馈的强化学习(Online Iterative Reinforcement Learning from Human Feedback, RLHF)的工作流程,在最近的大语言模型(Large Language Model, LLM)文献中,这被广泛报道为大幅优于其离线对应方法。然而,现有的开源RLHF项目仍然…

【微信小程序开发(从零到一)【婚礼邀请函】制作】——任务分析和效果实现的前期准备(1)

👨‍💻个人主页:开发者-曼亿点 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 曼亿点 原创 👨‍💻 收录于专栏&#xff1a…

第188题|幂级数的展开的常规方法(一)|武忠祥老师每日一题

解题思路:求幂级数有两种方法,一种是直接法,这里显然不太好求,还有一种是利用现有展开式展开,我们看到分母 可以分解因式成(x6)(x-1),进而拆解成一次式。拆解成一次式的目的是为了使用一下两个展开式。 第一步&#xf…

51单片机小车制造过程记录

首先感谢B站up主好家伙vcc的资料。 这次小车做出来虽然资料挺全的,但中间还是犯了很多不该犯的错误。 第一个,物料这次我们搞错了挺多,最离谱的应该是最小系统板都错了。 资料里用的stm32f103c8t6,我们开始买成了stm32f103c8t6。…

深度学习:光流估计新范式

0.概述 在这篇文章中,我们将讨论两种基于深度学习的光流运动估计方法。FlowNet是第一个用于计算光流的CNN方法,RAFT是当前最先进的估计光流的方法。我们还将看到如何使用作者提供的经过训练的模型来使用PyTorch对新数据进行推断。 1. FlowNet FlowNet…

银行核心业务详解

银行的核心业务是其运营和盈利的基础,下面我将详细介绍这些核心业务: 存款业务:存款业务是银行最基本的资金来源之一。银行通过吸收公众的存款,为贷款和投资活动提供资金。存款业务分为活期存款、定期存款、储蓄存款等多种形式。…

DDoS攻击揭秘与网站防护策略

DDoS攻击(分布式拒绝服务攻击)是一种利用大量被控制的计算机或智能设备(如僵尸网络)对目标网站或服务器发起大量无效请求或数据流量,从而导致目标系统资源耗尽、服务崩溃或无法处理正常请求的攻击方式。这种攻击通常是…

深入解析Linux逻辑卷管理器(LVM)

🐇明明跟你说过:个人主页 🏅个人专栏:《Linux :从菜鸟到飞鸟的逆袭》🏅 🔖行路有良友,便是天堂🔖 目录 一、前言 1、Linux的起源与发展 2、什么是逻辑卷管理器&…

考研数学|李林《880》PK李永乐《660》,你用对了吗?

建议先在强化之前做660,然后在强化的时候再做880。 660整体难度属于基础阶段到强化阶段。而且是选填部分的题目,所以还是要做一些其他题 然后说一下推荐的习题册:基础不好先做1800、强化之前660,强化可选880/1000题。但是传统习题…

ABAP ALSM_EXCEL_TO_INTERNAL_TABLE 导入Excel的几个问题

1、没有办法多页签 2、单元格50个字符限制,每个单元格仅读取50个字符 3、Excel单元格总不能有不可见字符换 eg 回车,换行 # 等否则读取的结果会加上引号

【HarmonyOS】Stage 模型 - 应用配置文件

如图所示: Stage 模型应用配置文件主要有两类: 全局配置文件。放在 AppScope 目录下,app.json5。用来配置应用全局的信息。模块配置文件,放在每个模块里,module.json5。用来配置模块的信息。 一、全局配置文件 示…

1709 ssm互联网消费信贷系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 java ssm互联网消费信贷系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,springspringMVCmybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源 代码和数据库,系统主要…

AI图书推荐:ChatGPT等生成式AI在高等教育中的应用

自2022年11月以来,ChatGPT及其在高等教育各个层面的影响已成为所有教育对话的核心内容。Chan和Colloton所著的书籍是首批全面探讨ChatGPT与生成式人工智能(GenAI)在高等教育中应用及影响的作品之一。 该书深入研究了针对专业环境定制的AI素养…

单片机开发板上外设资源讲解

单片机开发电路板上简单外设 开发板上各基础外设LED灯按键:数码管介绍液晶屏矩阵键盘扫描的概念LED点阵屏实时时钟蜂鸣器存储器 温度传感器&单总线 开发板上各基础外设 LED灯 中文名:发光二极管 外文名:Light Emitting Diode 简称&…

21、G1分代回收究竟如何让传统方法黯然失色?

21.1、前文回顾 在上一篇文章中,我们详细解析了G1垃圾回收器的设计思想。其核心理念在于将内存分割为众多小的Region,并针对新生代和老年代各自分配一部分Region。在垃圾回收过程中,G1会优先挑选那些能实现最短停顿时间以及最多回收对象的Region,以尽可能确保达到预设的垃…

vsCode 设置上下级文件夹目录分离展示?

默认情况下,vsCode目录文件夹会使用/合并展示在一行,这样视觉上看着并不直观,设置目录文件分离展示方法如下: 1、点击左下角设置图标,点击setting; 2、搜索栏输入compact; 3、取消勾选第一个选…

每日5题Day1 - LeetCode 1-5

每一步向前都是向自己的梦想更近一步,坚持不懈,勇往直前! 第一题:1. 两数之和 - 力扣(LeetCode) class Solution {public int[] twoSum(int[] nums, int target) {//返回值为Int[]数组,所以先初…

pytorch 2.0 多线程并行,导致GPU利用100%,卡住

背景: 程序中有pytorch模型两个,yolov5,crnn。 之前无论是pth格式,还是TRT格式,并行的都没有问题。 最近发现,多线程ThreadPoolExecutor(max_workers2)调用的时候,即单个进程内处理一张图像&a…