当前位置: 首页 > news >正文

【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包括以下两个命令:

  1. rz这是一个接收(receive)命令,允许用户从本地Windows或其他支持ZModem协议的系统通过SSH或Telnet会话上传文件到Linux服务器。当你在终端中运行rz命令时,会在本地系统打开一个文件选择对话框,你可以从中选择要上传的文件,然后这些文件会被按照ZModem协议高效地传输到Linux服务器。
  2. 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&#xff…...

关注 | 我国已对百种产品实施强制性产品认证

市场监管总局在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,人工修正预测不准的数据

背景 使用大语言模型做实体识别的实验时,发现大模型关于实体的边界预测一直不准。 主要原因在于当时找了很多同学标注数据,由于不同组同学关于实体的边界没有统一,故导致数据集中实体边界也没统一。 (找太多人标,会有…...

python三方库_ciscoconfparse学习笔记

文章目录 介绍使用基本原理父子关系 属性ioscfg 获取配置信息,返回列表is_config_line 判断是否是配置行is_intf 判断IOSCfgLine是不是interfaceis_subintf 判断IOSCfgLine是不是子接口lineage 不知道用法is_ethernet_intf 判断IOSCfgLine是否是以太网接口is_loopback_intf 判断…...

HDFS详解(Hadoop)

Hadoop 分布式文件系统(Hadoop Distributed File System,HDFS)是 Apache Hadoop 生态系统的核心组件之一,它是设计用于存储大规模数据集并运行在廉价硬件上的分布式文件系统。 1. 分布式存储: HDFS 将文件分割成若干块…...

python创建word文档并向word中写数据

一、docx库的安装方法 python创建word文档需要用到docx库,安装命令如下: pip install python-docx 注意,安装的是python-docx。 二、使用方法 使用方法有很多,这里只介绍创建文档并向文档中写入数据。 import docxmydocdocx.Do…...

MongoDB的安装配置及使用

文章目录 前言一、MongoDB的下载、安装、配置二、检验MongoDB是否安装成功三、Navicat 操作MongoDB四、创建一个集合,存放三个文档总结 前言 本文内容: 💫 MongoDB的下载、安装、配置 💫 检验MongoDB是否安装成功 ❤️ Navicat 操…...

Go学习路线

Go学习路线 文章目录 Go学习路线入门阶段一、Go基础和Goland的安装二、学习日志文件及配置文件三、学习mysql四、html,css,js快速入门五、写一个简单的前后端分离的记事本项目六、Linux快速入门七、Docker快速入门八、Git命令快速入门九、使用Docker打包…...

安全大脑与盲人摸象

21世纪是数字科技和数字经济爆发的时代,互联网正从网状结构向类脑模型进行进化,出现了结构和覆盖范围庞大,能够适应不同技术环境、经济场景,跨地域、跨行业的类脑复杂巨型系统。如腾讯、Facebook等社交网络具备的神经网络特征&…...

如何使用Git-Secrets防止将敏感信息意外上传至Git库

关于Git-Secrets Git-secrets是一款功能强大的开发安全工具,该工具可以防止开发人员意外将密码和其他敏感信息上传到Git库中。 Git-secrets首先会扫描提交的代码和说明,当与用户预先配置的正则表达式模式匹配时,便会阻止此次提交。该工具的优…...

Day 14 网络协议

常见网络设备:交换机 路由器 中继器 多协议网关(路由器的前身) 交换机:用于连接统一网络的设备,实现内网设备通信。 从广义上分为:局域网交换机,广域网交换机 从网络构成分为:接…...

msyql中SQL 错误 [1118] [42000]: Row size too large (> 8126)

场景: CREATE TABLE test-qd.eqtree (INSERT INTO test.eqtree (idocid VARCHAR(50) NULL,sfcode VARCHAR(50) NULL,sfname VARCHAR(50) NULL,sfengname VARCHAR(50) NULL,…… ) ENGINEInnoDB DEFAULT CHARSETutf8 COLLATEutf8_general_ci;或 alter table eqtre…...

实验六 智能手机互联网程序设计(微信程序方向)实验报告

实验目的和要求 请完成创建图片库应用&#xff0c;显示一系列预设的图片。 提供按钮来切换显示不同类别的图片。 二、实验步骤与结果&#xff08;给出对应的代码或运行结果截图&#xff09; 1.WXML <view> <button bindtap"showAll">所有图片</but…...

asp网站开发移动端/360指数官网

今天無意中&#xff0c;將公司的虛擬化服務器&#xff0c;設置成了 維護模式 &#xff0c;開始到也沒有注意 這個ESXi 服務器的維護模式有什麽區別&#xff0c;進去之後才發現無法新增和部署新的虛擬機了。把VSphere Client 的菜單看完了也沒有找到怎麼樣退出 維護模式。 開始我…...

免费做简历网站有哪些/百度网盘app下载安装 官方下载

Python OpenCV 365 天学习计划&#xff0c;与橡皮擦一起进入图像领域吧。本篇博客是这个系列的第 47 篇。 该系列文章导航参考&#xff1a;https://blog.csdn.net/hihell/category_10688961.html Python OpenCV学在前面Canny 边缘检测流程橡皮擦的小节学在前面 在 Canny 边缘提…...

三大框架对网站开发的作用/鄂州网站seo

1.双下划线开头 2.只能在类内部访问 3.在外部可以间接访问 4.子类也不能直接访问父类中的私有成员&#xff0c;只能间接访问 class Base:def __init__(self):self.__name pythonself.name Pdef BaseShow(self):return self.__nameclass Son(Base):def __init__(self):self.__…...

怎么做网站站长/seo搜索引擎优化就业前景

现在主流的网站开发语言无外乎asp、php、asp.net、jsp等。 网页从开始简单的hmtl到复杂的服务语言&#xff0c;走过了10多个年头&#xff0c;各种技术层出不穷&#xff0c;单个的主流技术也在不断翻新的版本&#xff0c;现在分析下各种语言的区别、优势、劣势、开发注意事项&am…...

怎么做网站的浏览栏/互联网广告联盟

websphere mq在本教程中&#xff0c;您将学习如何配置MQIPT HTTP和HTTPS实现&#xff0c;以及如何使用HTTP和HTTPS协议以及Internet和云技术来加深对MQIPT应用程序的了解。 本教程向您展示如何配置HTTP和HTTPS隧道选项&#xff0c;以将两个MQIPT实例之间的数据包作为HTTP请求发…...

灌云县建设局网站/济宁百度推广公司有几家

环境的安装 1.python中安装好selenium包 pip install selenium 如果不行 请接着往下看 python环境安装selenium和手动下载安装selenium的方法 方法1&#xff1a;cmd环境下&#xff0c;用pip install selenium 可能会很慢 方法2&#xff1a;下载selenium安装包手动安装 下…...