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

简介: 【Linux】软件包管理器yum和编辑器vim(部分动图演示),你值得观看


工具的本质也是指令

文章目录


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

一、Linux 软件包管理器 yum

1.什么是软件包

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

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

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

如何安装软件

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

yum install sl

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

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

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

sl

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

如何卸载软件

yum rmove sl

查看软件包

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

yum list | grep sl

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

yum search sl


2.第一个软件rzsz

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

先验证是否联网:

ping www.baidu.com

查看软件包:

yum list | grep lrzsz

进行下载:

yum install -y lrzsz.x86_64

上传文件:rz

把文件下载Windows下:sz

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


3.yum的扩展

ls /etc/yum.repos.d/

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

云服务器就不需要自己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

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

2.vim的基本操作

  • 进入vim,在系统提示符号输入vim及文件名称后,就进入vim全屏幕编辑画面: (这里值得说的是,进入之后是处于[命令模式],你要切换到[插入模式]才能够输入文字 )
  • [正常模式]切换至[插入模式]
    输入a
    输入i
    输入o
  • [插入模式]切换至[正常模式]
    目前处于[插入模式],就只能一直输入文字,如果发现输错了字,想用光标键往回移动,将该字删除,可以先按一下「ESC」键转到[正常模式]再删除文字。当然,也可以直接删除。
  • [正常模式]切换至[末行模式]
    「shift + ;」, 其实就是输入「:」
  • 退出vim及保存文件,在[正常模式]下,按一下「:」冒号键进入「Last line mode」,例如:w (保存当前文件)wq (输入「wq」,存盘并退出vim)q! (输入q!,不存盘强制退出vim)

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

利用vim创建hello world程序

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

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

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

  • 底行!执行shell指令

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

  • 底行替换命令

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

执行前:

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

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

至此,配置完成。

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

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


三、解决sudo问题

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

ls /etc/sudoers

一定存在这个文件

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

vim /etc/sudoers

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

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

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

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


四、总结

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

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

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

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

HTML 4256 字数 149 段落

相关文章
|
11天前
|
缓存 应用服务中间件 Linux
yum 命令下载软件包到本地
在 Linux 系统中,使用 `yum` 命令可以下载软件包但不安装。通过 `yum` 的下载缓存功能,可以快速获取所需软件包。常用命令包括:`yum list available` 列出可安装的软件包,`yum download nginx` 下载特定软件包,`yum download nginx-1.18.0` 下载特定版本,`yum download -resolve nginx` 下载软件包及其依赖,`yum download nginx -d /path/to/download/directory` 指定下载目录
101 11
|
3天前
|
数据可视化 Unix 开发工具
VIM编辑器
本文介绍了VIM编辑器的特点和使用方法,包括VIM的定义、安装步骤、四种工作模式(命令模式、编辑模式、末行模式、可视模式)及其基本操作。重点讲解了命令模式下的光标移动、编辑、搜索、撤销等操作,以及末行模式下的文件保存、退出等快捷键。此外,还涉及了VIM的高级操作,如窗口分割和调整。
|
12天前
|
缓存 应用服务中间件 Linux
yum 命令下载软件包到本地
在 Linux 系统中,使用 yum 命令可以下载软件包但不安装。通过 yum 的下载缓存功能,可以快速获取软件包。常用命令包括:`yum list available` 列出可安装的软件包,`yum download nginx` 下载特定软件包,`yum download nginx-1.18.0` 下载特定版本,`yum download -resolve nginx` 下载软件包及其依赖,`yum download nginx -d /path/to/download/directory` 指定下载目录
46 1
|
1月前
|
Linux 开发工具 数据安全/隐私保护
linux异常一:feng 不在 sudoers 文件中,此事将被报告。yum提示Another app is currently holding the yum lock; waiting for
这篇文章介绍了在CentOS 7系统中安装Docker时遇到的两个常见问题及其解决方法:用户不在sudoers文件中导致权限不足,以及yum被锁定的问题。
37 2
linux异常一:feng 不在 sudoers 文件中,此事将被报告。yum提示Another app is currently holding the yum lock; waiting for
|
3天前
|
存储 缓存 Linux
【Linux】另一种基于rpm安装yum的方式
通过本文的方法,您可以在离线环境中使用RPM包安装YUM并进行必要的配置。这种方法适用于无法直接访问互联网的服务器或需要严格控制软件源的环境。通过配置本地YUM仓库,确保了软件包的安装和更新可以顺利进行。希望本文能够为您在特定环境中部署YUM提供实用的指导。
27 0
|
23天前
|
IDE 搜索推荐 开发工具
LunarVim,vim编辑器推荐
【10月更文挑战第9天】
|
1月前
|
Unix Linux Go
Linux 使用Yum安装Go和配置环境
Linux 使用Yum安装Go和配置环境
|
Web App开发 物联网 Linux
|
3天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
18 3
|
3天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
16 2