工具的本质也是指令
文章目录
学习目标📝:学习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 段落