【Linux】软件包管理器 yum | vim编辑器

news2024/11/29 2:46:02

在这里插入图片描述

前言:
软件包管理器 yum和vim编辑器讲解


文章目录

  • 软件包管理器 yum
  • 编辑器-vim
    • 四种模式
    • 普通模式
    • 批量化注释和批量化去注释
    • 末行模式
    • 临时文件

软件包管理器 yum

yum(Yellowdog Updater, Modified)是一个在基于 RPM(管理软件包的格式和工具集合) 的 Linux 发行版中用于管理软件包的工具,它提供了一种简单而强大的方式来安装、更新和删除软件包,同时也能够自动解决软件包之间的依赖关系。类似于应用商城。

yum 实现软件包的下载安装

  • 软件仓库:yum 的工作是基于软件仓库的概念的。软件仓库是一个集中存放软件包的地方,用户可以从中获取所需的软件包。yum 默认会访问系统预先配置的软件仓库。
  • 软件包搜索:用户可以使用 yum 来搜索软件包,yum 会从软件仓库中查找与关键字匹配的软件包。
  • 软件包下载:当用户通过 yum 安装或更新软件包时,yum 会检查软件仓库中是否有所需的软件包及其依赖关系。如果有,yum 将自动下载所需的软件包及其依赖关系,并安装到系统中。

yum的相关操作

  • 搜索相关软件
    通过 yum list 列出系统中的软件包信息,并将输出发送到 grep 命令,然后 grep 命令搜索包含 “sl” 字符串的内容,并将符合条件的结果显示出来。

    yum list | grep sl
    

    在这里插入图片描述

  • 安装软件
    安装名为 “sl” 的软件包及其对应的 x86_64 架构版本。安装软件需要sudo指令或者root用户

    [sudo/root用户] yum [-y] install sl.x86_64
    

    安装成功,可以加上 [-y] 不再询问
    在这里插入图片描述
    sl执行,小火车
    在这里插入图片描述

  • 卸载软件

    [sudo/root用户] yum remove -y xxx软件名
    

base和epel两个常见的 yum 软件仓库

  1. base:“base” 仓库是 CentOS 发行版的默认软件仓库之一,包含了 CentOS 官方支持的核心软件包。这些软件包经过官方审核和测试,可以被认为是稳定和可靠的。
  2. epel:“epel” 是 “Extra Packages for Enterprise Linux” 的缩写,它是一个由 Fedora 社区维护的第三方软件仓库,提供额外的许多不在官方软件仓库中的软件包。

一般情况下,epel需要我们自己安装,而base已经内置好了

安装epel仓库

[sudo/root用户] yum -y install epel-release

yum本地配置
配置云服务器的 yum 源,这里我们以更改 CentOS 的 base 软件仓库为例:

  1. 备份原配置文件:
    在进行任何更改之前,建议备份 /etc/yum.repos.d/ 目录下所有的 yum 源配置文件,以防止出现意外情况。这里我们仅配置base仓库,所以只备份CentOS-Base.repo即可

    mv /etc/yum.repos.d/CentOS-Base.repo  /etc/yum.repos.d/CentOS-Base.repo.backup
    
  2. 配置新的文件
    这里我们先安装wget,是一个命令行工具,用于从网络上下载文件

    yum install wget
    

    接着我们通过阿里云的镜像站点https://mirrors.aliyun.com/repo,下载配置文件,并将其保存到系统中。-0将下载的文件保存为指定的文件名。

    wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
    
  3. 清理 Yum 缓存

    yum clean all
    
  4. 重新生成 Yum 缓存

    yum makecache
    
  5. 升级系统中的软件包

    yum update
    

编辑器-vim

vim 是一款功能强大的文本编辑器,常用于在终端环境下编辑文本文件。

打开文件
要在 vim 中打开一个文件,可以在终端中输入以下命令:

vim 文件名

四种模式

在这里插入图片描述
在可视化,替换,末行或插入模式下 esc 返回普通模式


在 vim 中,四种主要模式(普通模式、插入模式、可视模式和末行模式):

  1. 普通模式(Normal Mode)

    • 在普通模式下,你可以执行命令来移动光标、删除、复制、粘贴等操作。
    • 当你不输入任何命令或按键时,通常就处于普通模式下。
  2. 插入模式(Insert Mode)

    • 在编辑模式下,你可以输入和编辑文本。
    • 进入编辑模式的常见方式是按下 i 键,在这之后,你可以开始输入文本; 按下 a 键,光标会移动到当前位置的下一个字符;按下 o 键,会在光标的下方打开一个新的空行,并将光标移动到新行的起始位置,从而可以开始输入文本。
  3. 可视模式(Visual Mode)

    • 在可视模式下,你可以选择文本块以进行复制、剪切或其他操作。
    • 进入可视模式的常见方式是按下 Ctrl + v 键,然后你可以移动光标来选择文本。
  4. 末行模式(Command-Line Mode)

    • 在命令行模式下,你可以输入各种命令,如保存文件、退出 Vim 等。
    • 进入命令行模式的常见方式是按下 shift + ; 键,然后你可以输入命令并按下回车键执行。
    • 命令行通常位于编辑区域的底部。

普通模式

普通模式下的主要操作:

  1. 移动光标

    • 使用箭头键或 hjkl 键来分别向左、下、上、右移动光标。
    • gg 将光标定位在整个文本的开头,shift + g 将光标定位在整个文本的最后一行,n +shift + g 将光标定位到整个文本的任意一行。
    • shift + 4 将光标定位到当前行的结尾, shift + 5 将光标定位到当前行的开头。
    • w移动到下一个单词的开头、b移动上一个单词的开头、e 移动当前单词的末尾等位置。
  2. 删除文本

    • n + x 键删除光标所在位置及以后的共n个字符。
    • n + shift + x 键删除光标所在位置及之前的共n个字符。
    • dwdbde 等键删除当前单词、光标前一个单词、从光标位置到当前单词末尾的文本等。
    • n +dd 删除当前行及后面的n行。
  3. 复制和粘贴

    • n+yy 复制当前行及后面的n行。
    • n+p 粘贴n次。
  4. 撤销和重做

    • u 撤销上一步操作。
    • Ctrl + r 重做上一步被撤销的操作。
  5. 替换字符

    • n + r 对当前光标所在位置的字符替换为你输入的字符,并且重复该操作 n 次,每次替换一个字符。
  6. 切换大小写

    • shift+ ` 切换大小写。
  7. 保存并退出

    • shift + zz

批量化注释和批量化去注释

Ctrl + v 进入可视化模式,h j k l 区域选择,shift + i 进入插入模式,// 在第一行加上,esc 一次
Ctrl + v 进入可视化模式,h j k l 区域选择(仅包含//),shift + i 进入插入模式,dd


末行模式

  • w:保存
  • q:退出
  • !:强制
  • set nu:打开行号
  • nonu:关闭行号
  • /关键字:搜索
  • !command:不退出vim,执行命令
  • vs filename:分屏,多文件操作,Ctrl + ww 切换窗口

临时文件

在 Vim 中,临时文件通常是以 .#filename 的形式存在,其中 filename 是你正在编辑的文件名。这些临时文件存放在同一目录下,并以 .# 开头,用来保存 Vim 的临时编辑信息,包括未保存的更改等。这些临时文件在 Vim 正常退出时会被自动删除,但在异常退出或者编辑过程中可能会残留下来。

如果你想要查找和处理临时文件,你可以执行以下步骤:

  1. 在文件所在目录中查找:在你的文件所在的目录中使用文件管理器或者终端,查找以 .# 开头的文件。

  2. 清理临时文件:一旦找到了临时文件,可以将其删除,或者备份到其他地方以便之后检查。在删除之前,确保你不需要其中的任何信息。

  3. 恢复未保存的更改:如果你在异常退出前有未保存的更改,可以尝试使用 :recover filename 命令来恢复。如果找到相应的临时文件,Vim 将尝试加载其中的内容并恢复未保存的更改。

在这里插入图片描述

这个提示是 Vim 在打开文件时检测到已存在相同名称的交换文件(Swap file)。交换文件通常用于在编辑期间保存未保存的更改,以便在 Vim 异常退出或者编辑过程中丢失时进行恢复。

根据提示,你可以选择以下操作:

  • [O]pen Read-Only:以只读方式打开文件,这样你就可以查看但不能编辑文件。
  • (E)dit anyway:无论交换文件是否存在,强制打开文件进行编辑。
  • (R )ecover:恢复之前的编辑会话,加载交换文件中的内容并继续编辑。
  • (Q)uit:退出 Vim,不打开文件。
  • (A)bort:中止打开文件的操作。

在这里插入图片描述
如果你喜欢这篇文章,点赞👍+评论+关注⭐️哦!
欢迎大家提出疑问,以及不同的见解。

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

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

相关文章

电影《社交网络》带来的深层次的思考

《社交网络》是由大卫芬奇执导,杰西艾森伯格、安德鲁加菲尔德、贾斯汀汀布莱克等主演的剧情片,于2010年10月8日在美国上映。该片讲述了马克扎克伯格和埃德华多萨瓦林两人如何建立和发展Facebook的故事。 学习关键点: 创业精神:电…

C++opencv图像算数操作-加减乘除

quick_opencv.h #include<opencv2\opencv.hpp> using namespace cv; class QuickDemo{public:void operators_demo(Mat &image);//图像算数操作 };QuickDemo.cpp #include<quick_opencv.h>//图像算数操作 void QuickDemo::operators_demo(Mat &image) {M…

八、计算机视觉-边界填充

文章目录 前言一、原理二、具体的实现 前言 在Python中使用OpenCV进行边界填充&#xff08;也称为zero padding&#xff09;是一种常见的图像处理操作&#xff0c;通常用于在图像周围添加额外的像素以便进行卷积或其他操作。下面是使用OpenCV进行边界填充的基本原理和方法 一…

解决elementUI固定列后,下方多了一条横线的问题

最近遇到一个bug,如下图,el-table的操作列使用fixed属性固定后,下方多了一条横线: 我们将样式设置高优先,以覆盖内联样式,如下是less里使用穿透样式解决的办法: <style lang="less" scoped> /deep/ .el-table__fixed-right {height: 100

vulvhub-----Hacker-KID靶机

打靶详细教程 1.网段探测2.端口服务扫描3.目录扫描4.收集信息burp suite抓包 5.dig命令6.XXE漏洞读取.bashrc文件 7.SSTI漏洞8.提权1.查看python是否具备这个能力2.使用python执行exp.py脚本&#xff0c;如果提权成功&#xff0c;靶机则会开放5600端口 1.网段探测 ┌──(root…

用户中心 -- 快捷键使用

一、后端&#xff0c;软件 idea 1.1 代码如何写出 网址&#xff1a;用户管理 --汇总 -- 明细-CSDN博客 1.2 一键调整代码格式的快捷键 网址&#xff1a; 用户管理第2节课 -- idea 2023.2 创建表--【本人】-CSDN博客

OpenCV DNN 活体检测项目环境配置等各阶段tips

date: 2020-09-22 14:53 资料来源《OpenCV深度学习应用与性能优化实践》第八章。 在复现这个项目的时候发现一些可以调整的小tips。 环境配置阶段 使用conda 创建python 工作环境时&#xff0c;注释掉requirems.txt 里的opencv-python-inference-engine4.1.2.1&#xff0c;安…

php美女写真视频管理源码 PHPCMS视频写真管理系统源码

国内首家CMS视频写真管理系统&#xff01; 三大模块&#xff0c;视频模块&#xff0c;图片模块&#xff0c;资讯模块。 全方面解决了多元素运营方案。采用CI框架核心开发&#xff0c;体积小、运行快&#xff0c;强大缓存处理。 视频采用了云转码服务将不同的视频来源、不同的…

强化学习(TD3)

TD3——Twin Delayed Deep Deterministic policy gradient 双延迟深度确定性策略梯度 TD3是DDPG的一个优化版本&#xff0c;旨在解决DDPG算法的高估问题 优化点&#xff1a; ①双重收集&#xff1a;采取两套critic收集&#xff0c;计算两者中较小的值&#xff0c;从而克制收…

KMS密钥管理有哪些安全功能

KMS(Key Management Service)密钥管理服务是一种专门用于管理和保护加密密钥的系统。在现代的信息安全领域中&#xff0c;密钥的重要性不言而喻&#xff0c;它是确保数据加密、解密以及身份验证等安全操作的核心要素。KMS的出现&#xff0c;极大地提高了密钥管理的效率和安全性…

跨境云手机如何简化tiktok运营流程

如今&#xff0c;tiktok已经成为世界范围内都非常流行的社交媒体平台。然而在大多数情况下&#xff0c;由于网络原因&#xff0c;tiktok无法在国内使用&#xff0c;但依然有越来越多的人注册tiktok号码、建立tiktok矩阵。原因是tiktok仍然有大量的流量可供商业使用&#xff0c;…

CSP-201812-1-小明上学

CSP-201812-1-小明上学 解题思路 #include <iostream> using namespace std; int main() {int red, yellow, green, n, timeSum 0;cin >> red >> yellow >> green;cin >> n;for (int i 0; i < n; i){int flag, time;cin >> flag &g…

Spark---环境搭建---入门概念

目录 环境搭建 测试 Apache Spark是用于大规模数据处理的统一分析引擎&#xff1b; spark 仅仅替代了hadoop的mapraduce&#xff1b; spark比hadoop快一百倍&#xff1b; 环境搭建 1&#xff1a;解压&#xff1b; 2&#xff1a;配置spark环境变量&#xff1a; vim /etc/pro…

WouoUI-PageVersion 一个用于快速构建具有丝滑OLED_UI动画的项目

WouoUI-PageVersion 写在前面 简介&致谢 Air001的TestUI例子的b站的演示视频 Air001的LittleClock例子的b站演示视频: https://www.bilibili.com/video/BV1J6421g7H1/ Stm32的TestUI例子的b站演示视频: https://www.bilibili.com/video/BV1mS421P7CZ/ 所有演示的工程文…

【6-1】使用hanlp进行实体抽取以及句法分析(问题待解决)

1.使用hanlp抽取法人名称、企业名称等信息 # -*- coding: utf-8 -*- from pyhanlp import *text1"1998年11月11日&#xff0c;马化腾和同学张志东在广东省深圳市正式注册成立“深圳市腾讯计算机系统有限公司”&#xff0c;之后许晨晔、陈一丹、曾李青相继加入。当时公司…

缩小ppt文件大小的办法

之前用别人模版做了个PPT&#xff0c;100多M,文件存在卡顿问题 解决办法&#xff1a; 1.找到ppt中哪个文件过大&#xff0c;针对解决 2.寻找视频/音频文件&#xff0c;减少体积 3.字体文件是不是过多的问题。 一、文件寻找的内容步骤&#xff1a; 步骤&#xff1a; 1.把p…

MySQL数据库基础(九):SQL约束

文章目录 SQL约束 一、主键约束 二、非空约束 三、唯一约束 四、默认值约束 五、外键约束&#xff08;了解&#xff09; 六、总结 SQL约束 一、主键约束 PRIMARY KEY 约束唯一标识数据库表中的每条记录。主键必须包含唯一的值。主键列不能包含 NULL 值。每个表都应该有…

【Pygame手册03/20】用于绘制形状的 pygame 模块

目录 一、说明二、画图函数2.1 接口draw下的函数2.2 pygame.draw.rect()2.3 pygame.draw.polygon()2.4 pygame.draw.circle()2.5 pygame.draw.ellipse()2.6 pygame.draw.arc()2.7 pygame.draw.line ()2.8 pygame.draw.lines()2.9 pygame.draw.aaline()2.10 pygame.draw.aaline…

java之VO,BO,PO,DO,DTO

概念 VO&#xff08;View Object&#xff09;&#xff1a;视图对象&#xff0c;用于展示层&#xff0c;它的作用是把某个指定页面&#xff08;或组件&#xff09;的所有数据封装起来。DTO&#xff08;Data Transfer Object&#xff09;&#xff1a;数据传输对象&#xff0c;这…

为React开发人员释放ChatGPT的开发力量

本文将深入研究ChatGPT可以授权React开发人员的无数用例&#xff0c;并提供有价值的见解。将ChatGPT集成到React开发中&#xff0c;为寻求增强工作流程的开发人员开启了一个可能性的世界&#xff0c;从代码辅助和项目规划到创造性的头脑风暴和UI/UX设计协作。 React是一个用于构…