【linux】yum 和 vim

news2024/11/25 3:42:55

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 从入门到精通

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

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

相关文章

9. 软件登陆界面-2

窗口组件 1.组件的属性 组件的位置 组件的可视 2.组件的事件 窗口_创建完毕 窗口_托盘事件;带有参数的事件的使用方法。 3.组件的方法 置托盘图标 销毁() 编辑框组件 1.编辑框的属性 内容 是否允许多行 输入方式 密码遮盖字符…

单链表专题

文章目录 目录1. 链表的概念及结构2. 实现单链表2.1 链表的打印2.2 链表的尾插2.3 链表的头插2.4 链表的尾删2.5 链表的头删2.6 查找2.7 在指定位置之前插入数据2.8 在指定位置之后插入数据2.9 删除pos节点2.10 删除pos之后的节点2.11 销毁链表 3. 链表的分类 目录 链表的概念…

【Linux】初识Linux操作系统

目录 一、shell 二、Linux命令的分类 三、Linux命令的格式 四、编辑Linux命令行的辅助操作 五、查看命令使用说明的方法 六、基础命令 一、shell ●Linux系统中运行的一个特殊程序,位于用户与内核之间 ●作用:作为“翻译官”,接收用户…

基于Java+SpringBoot+Vue网络相册设计与实现(源码+文档+部署+讲解)

一.系统概述 网络相册设计与实现的目的是让使用者可以更方便的将人、设备和场景更立体的连接在一起。能让用户以更科幻的方式使用产品,体验高科技时代带给人们的方便,同时也能让用户体会到与以往常规产品不同的体验风格。 与安卓,iOS相比较起…

C++ 类和对象(中篇)

类的6个默认成员函数 如果一个类中什么成员都没有,简称为空类。空类中什么都没有吗?并不是的,任何一个类在我们不写的情 况下,都会自动生成下面6个默认成员函数。 构造函数: 定义:构造函数是一个特殊的成员…

【PHP系统学习】——Laravel框架数据库的连接以及数据库的增删改查的详细教程

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

【招贤纳士】长期有效

【招贤纳士】长期有效,有意者联系 一、SLAM算法工程师工作内容:任职资格: 二、规划算法工程师工作内容:任职资格: 工作地点:深圳南山 公司行业:家用扫地机器人 待遇从优,有机器人比赛…

CAD导入GIS平台常见问题大全

1.CAD导入图新地球报【坐标超出范围】、【导入失败】 一般是投影不对,多数是中央经线选错了,或者是没注意是否有带号 这种情况,先打开CAD软件,通过id命令看一下数据的坐标,如下图 看到坐标是这样式的,X达…

达梦数据库审计相关参数

达梦数据库审计相关参数 基础环境 操作系统:Red Hat Enterprise Linux Server release 7.9 (Maipo) 数据库版本:DM Database Server 64 V8 架构:单实例1 查看审计相关的参数 查看AUD相关的参数。 1.1 查看dm.ini配置文件。 在dm.ini配置文…

gurobi不同版本切换

每年年底,gurobi都会推出新版本。新版本是大的迭代更新,求解问题的效率和精度都会提升。官方人员一般会建议我们安装最新的版本,此外,写论文审稿专家也会建议我们使用较新的版本。 从我们现装的版本切换到新版本。我以往的做法是…

【CVE-2023-38831】进行钓鱼攻击的研究

本文仅仅是对相关漏洞利用的学习记录,请各位合法合规食用! WinRAR是一款文件压缩器,该产品支持RAR、ZIP等格式文件的压缩和解压等。WinRAR在处理压缩包内同名的文件与文件夹时代码执行漏洞,攻击者构建由恶意文件与非恶意文件构成的特制压缩包文件,诱导受…

【负载均衡——一致性哈希算法】

1.一致性哈希是什么 一致性哈希算法就很好地解决了分布式系统在扩容或者缩容时,发生过多的数据迁移的问题。 一致哈希算法也用了取模运算,但与哈希算法不同的是,哈希算法是对节点的数量进行取模运算,而一致哈希算法是对 2^32 进…

吴恩达机器学习理论基础—决策树模型

吴恩达机器学习理论基础—决策树模型 决策树模型(Decision Trees) 采用猫狗分类的数据集,同时拥有三个基本的特征(输入)作为模型建立时使用的数据集。 将构造出来的决策树,分为了决策结点和叶子节点&#…

【C++入门】内联函数、auto与基于范围的for循环

💞💞 前言 hello hello~ ,这里是大耳朵土土垚~💖💖 ,欢迎大家点赞🥳🥳关注💥💥收藏🌹🌹🌹 💥个人主页&#x…

2024-04-08

作业要求: 1> 思维导图 2>使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数 将登录按钮使用qt4版本的连接到自定义的槽函数中,在槽函数中判断ui界面上输入的账号是否…

【日常记录】【JS】一道解构面试题

文章目录 1、描述2、分析与实现3、参考链接 1、描述 让这一段代码可以执行,并且正确输出 let [name, age] {name: 呆呆狗,age: 20}console.log(name, age);2、分析与实现 在浏览器上执行这段代码会报错 翻译以下:不是可迭代对象 可迭代对象(…

Go——面向对象

一. 匿名字段 go支持只提供类型而不写字段名的方式,也就是匿名字段,也称为嵌入字段。 同名字段的情况 所以自定义类型和内置类型都可以作为匿名字段使用 指针类型匿名字段 二.接口 接口定义了一个对象的行为规范,但是定义规范不实现&#xff…

MT3022 召唤神龙

思路&#xff1a;二分答案 。check():检查组p套卡是否成立&#xff0c;即检查r卡是否足够组成p套卡。 &#xff08;易错点&#xff1a;check的思路&#xff0c;开long long&#xff09; #include <bits/stdc.h> using namespace std; long long int n, m; long long int…

JavaScript逆向爬取实战——使用Python实现列表页内容爬取

JavaScript逆向爬取—使用Python实现列表页内容爬取 1. 案例介绍 案例网址&#xff1a;https://spa6.scrape.center/&#xff0c; 如图所示&#xff1a; 点击任意一步电影&#xff0c;观察一下URL的变化&#xff0c;如图所示&#xff1a; 看到详情页URL包含了一个长字符串&am…

力扣HOT100 - 189. 轮转数组

解题思路&#xff1a; 三次反转。 先反转一次&#xff0c;再根据 k 拆分成两部分各反转一次。 class Solution {public void rotate(int[] nums, int k) {k % nums.length;reverse(nums, 0, nums.length - 1);reverse(nums, 0, k - 1);reverse(nums, k, nums.length - 1);}pu…