前言: 上篇文章我们了解了Linux下的命令行解释器、包括一些权限,从本文开始,我们将了解一些工具的使用,之后就将逐步过渡到编程。文章介绍 Linux 中 yum、rzsz 和 vim 的使用。yum 是包管理工具,可查找、安装、删除软件,国内常用清华源等镜像源。rzsz 可用于 windows 与 Linux 间文件传输。vim 是多模式编辑器,能进行文件编辑、模式切换和文本操作等,还可通过 .vimrc 文件个性化配置。
其实工具和我们的指令是差不多的,也就直接可以当作是一种指令。在讲述yum之前我们先讲述一些常识性的东西,我们在windows里面下载软件是不是需要先把软件包下载下来(当然前提我们要联网不联网下个毛),但是你是否有这样的疑惑,这个软件包怎么我说下就下(其实软件的下载就是文件的拷贝),它在哪?既然是文件的拷贝,肯定是电脑与电脑之间,那既然软件包不在我的电脑上,肯定在别人的电脑上,谁的电脑?软件提供商的远端服务器、云服务器上。那我下载的时候,怎么我点击下载,它就能找到对应的位置,把软件拷贝到我的电脑上呢?PC:软件官网的下载按钮已经把链接内置其中,通过这个链接就可以找到对应的服务器上的文件的位置。手机:手机我们下载如何下的?是不是在应用商店中点击安装就可以了,其实就是应用商店里它已经把软件的链接放到里面了,这就有意思了,软件包是软件提供商提供的却上架到了手机厂商的应用商店,应用商店有什么排行,有什么推荐,所以商业链就来了,手机厂商可以通过应用商店向软件提供商索取上架的费用。这就是一种生态。
总之,就是有人把我们所需要的软件包放在了它们的服务器上,通过提供链接的方式,让我们在联网的情况下去下载(拷贝)这些软件包。

Linux下是不是也是如此呢?当然,不过人家Linux是开源的,所以人家这些软件也是开源的,假设如果有一天,有人在这上面发布一款收费的软件,你觉得它能生存吗?绝无可能,估计第二天,比这款软件性能好且开源的软件就出来了,在开源的这片净土上长不起杂草。它通过各自的社区提供资金以租用服务器的形式,将这些软件放置其中,那Linux客户端如何得知?又是如何下载呢?不同的社区,在自己的Linux中,内置了服务器和应用对应的下载链接,你看在目标检测中,类似于YOLO我们配置环境中,经常下载一个什么东西,后面跟个链接(什么镜像源),这其实就是通过链接去相应的服务器上下载对应的软件。所以yum是什么?yum就是类似于手机上的应用商店,使得我们可以进行一键安装。
语法是:yum install XXX(软件名称)例如:我们要下载一个sl包(小火车),大家抓紧去试试,跑自己的小火车🤪





如果安装的时候不想让它问我们是否安装比较繁琐如上图4所示,你直接给我装就行,可以执行yum install -y sl加一个-y即可
上面就是Linux的开源生态,不过大家要注意这些都是国外的东西,国内要用,因为某些不可言说的原因,会导致一些问题,你看我们要用个GitHub还需要科学上网呢,所以国内为了支持这些,就出现了我们国内的一些生态,相信你听过什么清华源、阿里源,搜狐源等等。这就是这些由来的原因。
上面是我们想要安装一个软件的做法,但是如果我们要是想删除一个软件又该如何做呢?执行yum remove XXX(软件名称),如果不想让它询问我们,如上所述,加入-y选项。具体操作如下:


yum扩展知识: 1. 我们安装的时候,只告诉yum我要安装什么,好像并没有告诉它在哪里下载? 其实这个问题我们上面已经回答了,就是说yum有一个yum源配置文件,里面储存了我们所要下载软件所放置服务器的地址,其实就是类似于手机的应用商店,你看手机的应用商店不也没告诉这个软件在哪里放置,你只需点击下载就行。这个配置文件如下所示:

2. 有些软件,是没有被纳入centos、Ubuntu、kail等相关生态平台的官方软件集合中的,如上面我们所安装的sl软件,它就是izai非官方的软件集合列表当中。 3. 我们安装软件的时候不是说我们安装软件A就仅仅是安装软件A,软件与软件之间具有一定的耦合关系的,但是yum会处理这些软件与软件之间的耦合问题,我们不用担心。
注意: 关于 yum 的所有操作必须保证主机(虚拟机)网络畅通!!!这很好理解,你在windows或者手机上下载东西都需要联网。可以通过 ping 指令验证:ping www.baidu.com 我的是服务器肯定联网的,大家如果是虚拟机操作的时候注意联网

总之,关于yum就三板斧,1. 用yum list查找我们所需要的软件。2. 用yum install安装我们的软件。3. 用yum remove卸载我们的软件。
这个软件是用于 windows 机器和远端的 Linux 机器通过 XShell 传输文件
通过 yum list 命令可以罗列出当前一共有哪些软件包. 由于包的数目可能非常之多, 这里我们需要使用 grep 命令只 筛选出我们关注的包. 例如:yum list | grep lrzsz上面我们就用到了



vim其实就是一款多模式的编辑器,具有丰富的功能和强大的编程辅助特性,尤其受到程序员的欢迎,据说用它的都是大佬,咱还是小白,刚用可能还很别扭,熟能生巧,大家加油!🤨
vim的模式有很多,不同的vim版本可能有些差别,但是掌握这3种,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode)对于我们来说够用了,可能到后面我们再了解一两种模式。
1. 正常/普通/命令模式(Normal mode) 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式下,或者到底行模式 2. 插入模式(Insert mode) 只有在插入模式下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁 的编辑模式 3. 底行模式(last line mode) 文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模 式。要查看你的所有模式:打开vim,底行模式直接输入 在底行模式下,我们可以输入help vim-modes就可以看我们当前vim版本的所有模式 4. 替换模式 在命令模式下按shift + r进入替换模式,可以对文本进行替换操作
进入vim,在系统提示符号输入vim及文件名称后,就进入vim全屏幕编辑画面
vim test.c 有一点要注意,就是你进入vim之后,是处于命令模式,你要切换到[插入模式]才能够输入文 字。 大家操作的时候,先简单着来,我的vim已经配置,等到本章节末时,会教大家进行一键配置vim,如下所示:


[命令模式]切换至[插入模式]
[插入模式]切换至[命令模式]:无脑「ESC」
[命令模式]切换至[末行模式]:「shift + ;」, 其实就是输入「:」
[底行模式]切换至[命令模式]:无脑「ESC」
退出vim及保存文件,在[命令模式]下,按一下「:」冒号键,即进入底行模式,然后输入下面的操作:
[命令模式]切换至[替换模式]:按shift + r进入
[替换模式]切换至[命令模式]:无脑「ESC」

命令模式的意义就是提高我们的编辑效率
光标定位:
文本复制相关:
文本编辑相关:
vim的配置就是根据个人的喜好,对vim建立独有的配置,使得我们编程得心应手。vim的配置,是一人一份的,一个用户配置是自己的大家都互不影响。这个配置文件是在自己的家目录下,名字是.vimrc,可以看到这是一个隐藏文件如下所示:

怎么配置呢?大家可以在自己建立.vimrc文件然后在网上搜索相关的功能,在该文件里面进行设置。在这里我介绍一种一键配置,大家在shell中执行下面指令,注意这个一键配置的版本是只支持 Centos7 x86_64,大家注意甄别,执行完我们的vim就配置好了。
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
补充知识: sudo提权:前面我们学习权限的时候,有可能我们普通用户无法sudo的情况,下面我们就解决,如何在/etc/sudoers中田间我们的用户,当然必须是root才能进去修改,在该文件100行位置root下面田间即可,如下所示:

通过本文的学习,我们了解了Linux 系统中 yum、rzsz 和 vim 的相关知识及用法。yum 是 CentOS 等系统中的包管理工具,可通过 yum list 查找软件,yum install 安装软件,yum remove 删除软件,国内常用清华源等镜像源来解决国外源访问问题。rzsz 软件用于 windows 与 Linux 机器间通过 XShell 传输文件,可使用 yum list | grep lrzsz 来查找安装。vim 是多模式编辑器,有命令模式、插入模式和底行模式,可进行文件编辑、模式切换、文本操作等,还可在 .vimrc 配置文件中进行个性化配置。