【linux】yum 和 vim
yum 和 vim
- 1. Linux 软件包管理器 yum
- 1.1 什么是软件包
- 1.2 查看软件包
- 1.3 如何安装软件
- 1.4 如何卸载软件
- 1.5 关于 rzsz
- 2. Linux编辑器-vim使用
- 2.1 vim的基本概念
- 2.2 vim的基本操作
- 2.3 vim命令模式命令集
- 2.4 vim底行模式命令集
- 2.5 vim操作总结
- 补充:vim下批量化注释和批量化去注释的方法
- 3. 设置让普通用户进行sudo提权步骤
- 4. 简单vim配置
1. Linux 软件包管理器 yum
1.1 什么是软件包
- 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序。
但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上,通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装。- 软件包和软件包管理器, 就好比 “App” 和 “应用商店” 这样的关系.
- yum(Yellow dog Updater, Modified)是Linux下非常常用的一种软件包管理器. 主要应用在Fedora, RedHat, Centos等发行版上.
1.2 查看软件包
通过 yum list 命令可以罗列出当前一共有哪些软件包. 由于包的数目可能非常多, 这里我们需要使用 grep 命令只筛选出我们关注的包,例如:
yum list | grep lrzsz

注意事项:
- 软件包名称: 主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构.
- “x86_64” 后缀表示64位系统的安装包, “i686” 后缀表示32位系统安装包. 选择包时要和系统匹配.
- “el7” 表示操作系统发行版的版本. “el7” 表示的是 centos7/redhat7. “el6” 表示 centos6/redhat6.
- 最后一列, base 表示的是 “软件源” 的名称, 类似于 “小米应用商店”, “华为应用商店” 这样的概念.
1.3 如何安装软件
[sudo/root身份] yum install [-y] xxx
yum 会自动找到都有哪些软件包需要下载, 这时候敲 “y” 确认安装.
出现 “complete” 字样, 说明安装完成.
注意事项:
- 安装软件时由于需要向系统目录中写入内容, 一般需要 sudo 或者切到 root 账户下才能完成.
- yum安装软件只能一个装完了再装另一个. 正在yum安装一个软件的过程中, 如果再尝试用yum安装另外一个软件, yum会报错.
- 如果 yum 报错, 请自行百度.
例如:在Linux下安装一个小火车sl指令

运行一下:

1.4 如何卸载软件
[sudo/root身份] yum remove [-y] xxx
补充:
在centos中凡是能够直接被用户下载的软件其实已经是一些非常稳定的软件了,但centos每年都会有一些新增的软件,它们又没有被测试过,稳定性还存疑,所以不能直接更新到yum软件包集合里,所以yum会提供两个软件源,一个是base(基本软件源,很稳定),另一个是epel(扩展软件源,稳定性尚未可知)。当epel里的软件经过一段时间使用测试后,稳定性已有保障,就会被更新到base软件源中,使base软件源得以扩充。
一般来说系统都会有一个基本软件源,但扩展软件源需要自行安装,安装指令为:
yum -y install -y epel-release

我已经安装过了,所以他会提示我已安装到最新。(而且上面安装可能需要root权限)
可通过ls /etc/yum.repos.d/指令查看当前系统的软件源:

也可以通过vim /etc/yum.repos.d/CentOS-Base.repo指令查看软件源内置的软件下载地址链接:

1.5 关于 rzsz
这个工具用于 windows 机器和远端的 Linux 机器通过 XShell 传输文件.
安装完毕之后可以通过拖拽的方式将文件上传过去.
需要先安装lrzsz包:
sudo yum install lrzsz
rzsz包括以下两个命令:
rz:这是一个接收(receive)命令,允许用户从本地Windows或其他支持ZModem协议的系统通过SSH或Telnet会话上传文件到Linux服务器。当你在终端中运行rz命令时,会在本地系统打开一个文件选择对话框,你可以从中选择要上传的文件,然后这些文件会被按照ZModem协议高效地传输到Linux服务器。sz:这是一个发送(send)命令,作用与rz相反,它允许用户从Linux服务器上下载文件到本地支持ZModem协议的系统。运行sz filename命令将会把服务器上的指定文件传输到本地机器。
注意事项 :
关于 yum 的所有操作必须保证主机(虚拟机)网络畅通!!!
可以通过 ping 指令验证:
ping www.baidu.com
2. Linux编辑器-vim使用
vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 mac os、windows。
2.1 vim的基本概念
我们主要介绍vim的三种模式,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:
- 正常/普通/命令模式(Normal mode)
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式下,或者到底行模式
- 插入模式(Insert mode)
只有在插入模式下,才可以做文字输入,按
「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
- 末行/底行模式(last line mode)
文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,
shift+;即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入:help vim-modes
2.2 vim的基本操作
- [命令模式]切换至[插入模式]
- 输入
a- 输入
i- 输入
o
- [插入模式]切换至[命令模式]
- 按一下
「ESC」键转到[命令模式]。
- [命令模式]切换至[底行模式]
「shift + ;」, 其实就是输入「:」
- 退出vim及保存文件,在[命令模式]下,按一下
「:」冒号键进入底行模式,例如:
- :
w(保存当前文件)- :
wq(输入「wq」,存盘并退出vim)- :
q!(输入q!,不存盘强制退出vim)
2.3 vim命令模式命令集
- 按
「i」切换进入插入模式「insert mode」,按i进入插入模式后是从光标当前位置开始输入文件;- 按
「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;- 按
「o」进入插入模式后,是插入新的一行,从行首开始输入文字。- 按
「ESC」键:从插入模式切换为命令模式
n+ yy:复制当前行 ——n: 连续复制n行n+p:粘贴,当前光标的下一行 ——n: 表示把指定内容粘贴n次u:撤销ctrl+r: 对历史撤销,进行撤销(反撤销)n + dd:剪切/删除指定行、连续的多行shift+4= $:将光标定位到当前行的结尾shift+ 6=^:将光标定位到当前行的开始gg:将光标定位到整个文本的最开头shift+g = G:将光标定位到整个文本的最后一行n+ shift +g=nG:将光标定位到整个文本任意一行h,j,k,l:左,下,上,右,也可以带n。w:按照单词为单位进行光标后移b:按照单词为单位进行光标前移~:对文本内容进行大小写快速切换n+x:删除光标后续的一个字符,可以一次删除n个 —— 一行内n + shift+x=X:删除光标之前的一个字符,可以一次删除n个 —— 一行内n+r:对光标指定的位置, 进行一个字符的替换,可以一次替换多个shift+r=R: 进入替换模式,直接进行文本替换shift+zz=ZZ:保存并退出注意:上述命令集当中的
n表示具体数字
2.4 vim底行模式命令集
在使用末行模式之前,请记住先按「ESC」键确定您已经处于命令模式,再按「:」冒号即可进入底行模式。
w:保存q:退出wq:保存并退出!:强制q!:不保存退出
set nu:打开行号,nonu:去掉行号/关键字:做搜索,搜索关键字!command:不退出vim,可以进行shell命令的执行,常用函数查看vs filename:分屏,多文件操作
2.5 vim操作总结

补充:vim下批量化注释和批量化去注释的方法
- 批量化注释:

- 批量化去注释:

3. 设置让普通用户进行sudo提权步骤
sudo即无需切换用户身份,允许用户以root权限执行命令。在使用前需提前配置。
提权步骤:


4. 简单vim配置
配置文件的位置:
- 在目录
/etc/下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。- 而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“
.vimrc”。例如,/root目录下,通常已经存在一个.vimrc文件,如果不存在,则创建之。(vim在执行时会读取这个.vimrc的隐藏文件,一些vim的基本配置就可以写入这个.vimrc文件中,vim执行时自动读取)- 切换用户成为自己进入自己的主工作目录,执行
cd ~- 打开自己目录下的
.vimrc文件,执行vim .vimrc写入配置
例如:向vim中写入打印行号的配置:

除了打印行号还可以去百度上搜索一些更好用的vim配置,写入方法都是一样的。
下面再推荐一种简单的一键配置方法:

参考资料:
Vim 从入门到精通
相关文章:
【linux】yum 和 vim
yum 和 vim 1. Linux 软件包管理器 yum1.1 什么是软件包1.2 查看软件包1.3 如何安装软件1.4 如何卸载软件1.5 关于 rzsz 2. Linux编辑器-vim使用2.1 vim的基本概念2.2 vim的基本操作2.3 vim命令模式命令集2.4 vim底行模式命令集2.5 vim操作总结补充:vim下批量化注释…...
excel试题转word格式
序号试题选项答案 格式如上。输出后在做些适当调整就可以。 import pandas as pd from docx import Document from docx.shared import Inches# 读取Excel文件 df pd.read_excel(r"你的excel.xlsx")# 创建一个新的Word文档 doc Document()# 添加标题 doc.add_headi…...
C语言学习笔记之指针(二)
指针基础知识:C语言学习笔记之指针(一)-CSDN博客 目录 字符指针 代码分析 指针数组 数组指针 函数指针 代码分析(出自《C陷阱和缺陷》) 函数指针数组 指向函数指针数组的指针 回调函数 qsort() 字符指针 一…...
在Debian 12系统上安装Docker
Docker 在 Debian 12 上的安装 安装验证测试更多信息 引言 在现代的开发环境中,容器技术发挥着至关重要的作用。Docker 提供了快速、可靠和易于使用的容器化解决方案,使开发人员和 DevOps 专业人士能够以轻松的方式将应用程序从一个环境部署到另一个环…...
策略者模式(代码实践C++/Java/Python)————设计模式学习笔记
文章目录 1 设计目标2 Java2.1 涉及知识点2.2 实现2.2.1 实现两个接口飞行为和叫行为2.2.2 实现Duck抽象基类(把行为接口作为类成员)2.2.3 实现接口飞行为和叫行为的具体行为2.2.4 具体实现鸭子2.2.5 模型调用 3 C(用到了大量C2.0的知识&…...
vue2/Vue3项目中,通过请求接口来刷新列表中的某个字段(如:Axios)
vue2/Vue3项目中,通过请求接口来刷新列表中的某个字段。可以使用 Vue 的异步请求库(如 Axios)来发送请求,并在请求成功后更新相应的字段。 示例如下(Vue2): 简单的示例如下,假设列…...
Java多线程锁定
前言 利用多线程编程虽然能极大地提升运行效率,但是多线程本身的不稳定也会带来一系列的问题,其中最经典莫过于售票问题;这时就需要人为地加以限制和干涉已解决问题,譬如今日之主题——锁定。 锁定是我们在多线程中用来解决售票…...
【C 数据结构】单链表
文章目录 【 1. 基本原理 】1.1 链表的节点1.2 头指针、头节点、首元节点 【 2. 链表的创建 】2.0 创建1个空链表(仅有头节点)2.1 创建单链表(头插入法)*2.2 创建单链表(尾插入法) 【 3. 链表插入元素 】【…...
[MAUI]集成富文本编辑器Editor.js至.NET MAUI Blazor项目
文章目录 获取资源从源码构建从CDN获取获取扩展插件 创建项目创建控件创建Blazor组件初始化保存销毁编写渲染逻辑 实现只读/编辑功能切换模式获取只读模式状态响应切换事件 实现明/暗主题切换项目地址 Editor.js 是一个基于 Web 的所见即所得富文本编辑器,它由CodeX…...
Spring Boot | Spring Boot 整合 “Servlet三大组件“ ( Servlet / Filter / Listene )
目录: Spring Boot 整合 "Servlet三大组件" :1. 使用 "组件注册" 的方式 "整合Servlet三大组件" ( 实际操作为 : 创建自定义的"三大组件"对象 结合刚创建"的自定义组件对象"来 将 XxxRegistrationBean对象 通过…...
错误分析 (Machine Learning研习十九)
错误分析 您将探索数据准备选项,尝试多个模型,筛选出最佳模型,使用 Grid SearchCV微调其超参数,并尽可能实现自动化。在此,我们假设您已经找到了一个有前途的模型,并希望找到改进它的方法。其中一种方法就…...
SQL系统函数知识点梳理(Oracle)
这里写目录标题 函数系统函数转换函数to_date()to_char()将数值转换成字符格式 添加货币符号将日期转换成字符 其他不常用的转换函数 字符型函数连接函数大小写转换函数大写转换小写转换首字母大写,其余的小写 替换函数去除空格函数截取函数填充函数获取字符长度函数…...
面试突击---MySQL索引
面试突击---MYSQL索引 面试表达技巧:1、谈一下你对于mysql索引的理解?(为什么mysql要选择B树来存储索引)2、索引有哪些分类?3、聚簇索引与非聚簇索引4、回表、索引覆盖、最左匹配原则、索引下推(1ÿ…...
关注 | 我国已对百种产品实施强制性产品认证
市场监管总局在7日举行的新闻发布会上介绍,该局日前发布《市场监管总局关于对商用燃气燃烧器具等产品实施强制性产品认证管理的公告》,对具有较高安全风险的商用燃气燃烧器具、阻燃电线电缆、电子坐便器、电动自行车乘员头盔、可燃气体探测报警产品、水性…...
虚幻引擎架构自动化及蓝图编辑器高级开发进修班
课程名称:虚幻引擎架构自动化及蓝图编辑器高级开发进修班 课程介绍 大家好 我们即将推出一套课程 自动化系统开发。 自动化技术在项目开发的前中后期都大量运用。如何您是一家游戏公司,做的是网络游戏,是不是经常会遇到程序员打包加部署需…...
Weakly Supervised Audio-Visual Violence Detection 论文阅读
Weakly Supervised Audio-Visual Violence Detection 论文阅读 摘要III. METHODOLOGYA. Multimodal FusionB. Relation Modeling ModuleC. Training and Inference IV. EXPERIMENTSV. CONCLUSION阅读总结 文章信息: 发表于:IEEE TRANSACTIONS ON MULTIME…...
华为海思数字芯片设计笔试第六套
声明 下面的题目作答都是自己认为正确的答案,并非官方答案,如果有不同的意见,可以评论区交流。 这些题目也是笔者从各个地方收集的,感觉有些题目答案并不正确,所以在个别题目会给出自己的见解,欢迎大家讨论…...
重绘和重排:概念、区别和应用示例
还是大剑师兰特:曾是美国某知名大学计算机专业研究生,现为航空航海领域高级前端工程师;CSDN知名博主,GIS领域优质创作者,深耕openlayers、leaflet、mapbox、cesium,canvas,webgl,ech…...
创建k8s deploy yaml文件的imagePullSecrets语句
镜像仓库是harbor kubectl create secret docker-registry key --docker-server192.168.0.190 --docker-usernameadmin --docker-passwordHarbor12345...
大模型预测结果导入到Doccano,人工修正预测不准的数据
背景 使用大语言模型做实体识别的实验时,发现大模型关于实体的边界预测一直不准。 主要原因在于当时找了很多同学标注数据,由于不同组同学关于实体的边界没有统一,故导致数据集中实体边界也没统一。 (找太多人标,会有…...
学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
渲染学进阶内容——模型
最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...
ETLCloud可能遇到的问题有哪些?常见坑位解析
数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...
学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...
C# 表达式和运算符(求值顺序)
求值顺序 表达式可以由许多嵌套的子表达式构成。子表达式的求值顺序可以使表达式的最终值发生 变化。 例如,已知表达式3*52,依照子表达式的求值顺序,有两种可能的结果,如图9-3所示。 如果乘法先执行,结果是17。如果5…...
