【Linux】软件包管理器yum和编辑器vim(部分动图演示)

举报
平凡的人1 发表于 2022/11/15 23:57:07 2022/11/15
【摘要】 工具的本质也是指令@[toc]学习目标📝:==学习yum工具,进行软件安装,掌握vim编辑器使用,学会vim的简单配置 ,解决sudo配置问题== 一、Linux 软件包管理器 yum 1.什么是软件包安装软件,需要先把软件包下载下来(联网)。软件包并不在你的本地(你的电脑),软件包只能在别人的电脑上(远程服务器上,云服务器)。在Linux下安装软件, 一个通常的办法是下载到程序的源代码,...

工具的本质也是指令

@[toc]
学习目标📝:==学习yum工具,进行软件安装,掌握vim编辑器使用,学会vim的简单配置 ,解决sudo配置问题==

一、Linux 软件包管理器 yum

1.什么是软件包

安装软件,需要先把软件包下载下来(联网)。软件包并不在你的本地(你的电脑),软件包只能在别人的电脑上(远程服务器上,云服务器)

在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.软件包和软件包管理器, 就好比 “App” 和 “应用商店” 这样的关系.yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器

下载之后,一定要进行安装,安装的本质其实就是拷贝,拷贝一定会拷贝的特定目录的,目录是有权限的

如何安装软件

通过 yum, 我们可以通过很简单的一条命令完成简单安装. (关于 yum 的所有操作必须保证主机(虚拟机)网络畅通!! 对于云服务器来说,没网络登录都登录不了,就不需要考虑了)

yum install sl

image-20221017160625801

yum 会自动找到都有哪些软件包需要下载, 这时候敲 “y” 确认安装.出现 “complete” 字样, 说明安装完成

yum install -y sl//在指令加上-y表示无需询问,直接安装

我们直接来演示一下效果:

sl

我们需要根据自己的需求一些功能,查找对应的软件

如何卸载软件

yum rmove sl

image-20221017155933077

查看软件包

通过 yum list 命令可以罗列出当前一共有哪些软件包. 由于包的数目可能非常之多, 这里我们需要使用 grep 命令只筛选出我们关注的包. 例如:

yum list | grep sl

image-20221017161804608

除此之外,还有一个搜索的命令:(搜索结果出来不太友好)

yum search sl

image-20221017161941691


2.第一个软件rzsz

这个工具用于 windows 机器和远端的 Linux 机器通过 XShell 传输文件 ,安装完毕之后可以通过拖拽的方式将文件上传过去

先验证是否联网:

ping www.baidu.com

查看软件包:

yum list | grep lrzsz

image-20221017170345801

进行下载:

yum install -y lrzsz.x86_64

上传文件:rz

image-20221017164120774

image-20221017164331569

把文件下载Windows下:sz

image-20221017165215194

image-20221017165733784

当然,也可以直接进行拖拽。


3.yum的扩展

ls /etc/yum.repos.d/

这个路径下配置的就是yum源的配置文件

image-20221017180518561

云服务器就不需要自己yum源配置了。

  • 下载阿里yum源配置文件
wget https://mirrors.aliyun.com/repo/Centos-7.repo
  • 备份原始yum源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_tmp
  • 使用该yum源
下载好的阿里yum源重命名为CentOS-Base.repo

镜像源如果是国内的了,那就不用管了。

有些软件,没有被纳入centos,Ubuntu,kail等相关生态平台的官方集合中,在非官方的软件集合列表,yum源一般称为epel

  • epel-release的安装(非官方扩展源)
yum install -y epel-release

如果在安装软件的时候,没有在CentOS-Base.repo(官方)中找到官方的下载链接,那么yum会自动去epel-release指向的链接处去查找,相当于epel-release(非官方)给yum提供了更多的下载渠道.


二、Linux编辑器-vim使用

1.vim的基本概念

vim编辑器功能强大,是具有多模式的编辑器。vim的三种模式(其实有好多模式,我们先了解这3种即可),分别是命令行模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下

  • 命令行模式(Normal mode)
    控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode
  • 插入模式(Insert mode)
    只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
  • 底行模式(last line mode)
    文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入:help vim-modes

对于这些模式的关系之间的理解,我们用一张图便能清楚的理解了:

image-20221022154047294

2.vim的基本操作

  • ==进入vim,在系统提示符号输入vim及文件名称后,就进入vim全屏幕编辑画面: (这里值得说的是,进入之后是处于[命令模式],你要切换到[插入模式]才能够输入文字 )==

  • [正常模式]切换至[插入模式]
    输入a
    输入i
    输入o

  • [插入模式]切换至[正常模式]
    目前处于[插入模式],就只能一直输入文字,如果发现输错了字,想用光标键往回移动,将该字删除,可以先按一下「ESC」键转到[正常模式]再删除文字。当然,也可以直接删除。

  • [正常模式]切换至[末行模式]
    「shift + ;」, 其实就是输入「:」

  • 退出vim及保存文件,在[正常模式]下,按一下「:」冒号键进入「Last line mode」,例如:
    : w (保存当前文件)
    : wq (输入「wq」,存盘并退出vim)
    : q! (输入q!,不存盘强制退出vim)

其实也就是上面的那张关系图啦

利用vim创建hello world程序

image-20221022155653856

image-20221022155725825

image-20221022155748405

image-20221022155809314

3.命令行模式

命令行的意义在于👇

各种命令,能够提高我们的编辑效率

vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格(这里自己可以试一试)

下面我们用动图对一些命令做出演示:

  • 光标定位

shift+4($):行右

动画

shift+6(^):行左

shift+g:底部

gg:顶部

好了,其他具体的动图演示这里就不在展开了😥。

n+shift+g跳转到指定行,n代表的是行号

对于h:左 j:下(假想为jump) k:上(假想为king) l:右

  • 复制文本相关

光标所在行:

yy:复制(nyy)支持对光标所在行,进行多行复制

p:粘贴(n p)支持多行粘贴

dd:删除光标所在行(ndd)支持多行删除

dd+p:剪切操作

u:撤销

ctrl+r:取消u操作

  • 文本编辑

文本行的大小写切换 shif+~

shift+r替换模式:批量化替换

r:替换光标所在的一个字符(支持nr)

x:向后删,shift+x:向前删(行内删除,支持n+x进行删除)

  • 补充

w:向后按单词移动

b:先前按单词移动

4.插入模式

从命令到插入:

按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
按「o」进入插入模式后,是插入新的一行,从行首开始输入文字

5.底行模式

在使用末行模式之前,请记住先按「ESC」键确定您已经处命令行模式,再按「:」冒号即可进入末行模式

  • 调用和取消行号

set nu/nonu调出和取消行号(一张动图解决这两个指令)

  • 分屏

无论分多少屏,光标都只有一个。光标的意义在于选中的行或者屏幕。

比如:vs copy.c

image-20221022192748085

==光标跨屏:ctrl+ww==(动图演示,注意后面光标的闪动)

保持退出后,我们仍然可以看到copy.c:

image-20221022193235095

  • 底行!执行shell指令

在底行模式中,不需要退出vim,只需要加上!强制执行即可执行shell指令

image-20221022193726187

image-20221022193900470

image-20221022193918626

  • 底行替换命令

我们只需要:%s/需要替换/替换后的/g

执行前:

image-20221022194153781

执行后(我们以动图来演示):

6.vim的配置

没有配置的vim用起来其实和记事本并没有多大的区别,都不能自动补齐缩进,所以问题来了我们需要对vim进行配置。

我们需要了解配置vim的原理:

vim的配置是一人一份的,一个用户配置的是自己的并不影响别人。每个人虽然用的是同一个vim程序,但是大家用的是vim不同的配置(每个用户在自己的家目录下都有属于自己的配置文件)

我们需要创建.vimrc文件,并在自己的.vimrc文件中添加一系列的命令,充当于vim的配置文件。所谓的vim的基本配置,就是修改自己的vimrc!

但是接下来的问题是配置vim比较麻烦,配置的东西比较多,我们并不知道需要配置哪些,所以我们直接在家目录下执行一键配置的命令即可:

curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh

image-20221022205954902

至此,配置完成。

默认缩进是两个空格,想改变的话可以打开.vimrc对其进行修改

image-20221022210503374

这样子就完成了对vim的基本配置了。


三、解决sudo问题

image-20221022212345142

第一、切换成root用户。输入命令

ls /etc/sudoers

image-20221022212645681

一定存在这个文件

第二、通过vim打开已近存在的sudoers

vim /etc/sudoers

image-20221022213001843

添加自己的用户名到这个地方

image-20221022213212854

然后就是退出环节,如果直接wq会报错,所以我们直接强制w!回车,q!回车进行配置。至此,将自己的用户名添加到了可以提权sudo的名单里。

image-20221022213555793

至此,我们总算把sudo问题解决了。

如上,就是关于vim的所有内容


四、总结

关于vim我们总算说完了,不过对于vim这只是一个开始,我们还需要花大量的时间和精力去学习熟悉

同时,通过此篇,我们了解Linux下的软件包管理器yum以及编译器的vim的使用,虽说我们有VS等编译器,但是属于集成开发环境,我们也应该去学习vim的知识以及基本使用和配置,同时,对于一些指令我也用了动图去做具体的展示,能够更加清晰明了。

最后,我们还解决了我们一开始就提到的sudo提权问题,虽然一开始就接触到了,但是那个时候并没有解决,是因为我们对于vim并没有那么熟悉,通过配置我们完成了普通用户能够sudo提权的配置问题,所以,我们从现在开始,由于root的权限过大,我们也应该摒弃root用户的使用,开始我们自己创建的普通用户之旅。

至此,关于yum和vim的基本使用我们就到这里结束了。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。