目录
一、软件包管理器 yum
1. yum的概念和对yum整个生态的理解
Linux安装软件的三种方式:
对yum和yum整个生态的理解:
2.yum的使用
①yum源
②yum安装软件
③yum源更新
二、文本编辑器 vim
1.vim常用模式
2.详谈每种模式:
(1)插入模式
(2)底行模式
①退出vim
②行号
③不退出vim执行各种指令
④搜索
(3)命令模式:
①光标的上下随机定位
②光标的左右随机定位
③方向键的控制
④赋值粘贴删除剪切
⑤撤销操作
⑥行内局部性操作
⑦搜索
(4)替换模式
(5)视图模式
①注释与去注释
②多文件编辑
小细节:
3.vim配置
(1)基础配置
(2)直接自动化部署配置
一、软件包管理器 yum
1. yum的概念和对yum整个生态的理解
Linux安装软件的三种方式:
1).源代码安装
尽量规避,因为需要自己去编译,可能存在各种问题,不推荐这种方法
2).rpm包安装
有人已经把要用的软件编译打包好了,形成rpm, 使用rpm直接把对应的软件装上去,这种方法也不推荐,因为对于小白用户来说,不一定知道要下载哪些安装包,也不知道哪个软件包是对的,再者一些文件是需要依赖于其他文件才能跑起来,所以也不推荐
补充:安装软件的本质就是把对应的可执行程序拷贝到指定的目录下
3).yum一键式安装
对一个软件的生命周期的管理,从安装到查找到卸载都用yum一个工具, yum具体是什么,我们下文介绍~
对yum和yum整个生态的理解:
1). yum的基本定位
早期下载软件需要去对应网站上查找下载,下下来的软件容易出问题,后来手机上有了应用商店,把大部分软件都集合在了应用商店里面,相当于在用户和开发软件的公司之间多了一个手机厂商,手机厂商会对软件做甄别,有问题的或者评价不太好的软件手机厂商可以直接下架,因此用户下载软件更加安全便捷高效~
而手机上安装软件找应用商店,Linux中安装软件找yum, 所以yum和手机管家的作用是一样
2). 软件在没有下载安装之前存放在哪?? 是已经在手机上了???
软件在没有下载之前是放在手机厂商提供的服务器上的,肯定没在手机上,要不然内存早都爆了,开发软件的公司将软件开发好之后,经过审核没有问题,就上线到服务器上了~
3). 手机厂商和软件公司提供服务器和开发app是可以赚钱的,linux是开源的,那么服务器谁提供??对应的软件又是谁提供??
就是因为Linux是开源的,所以被各大公司广泛选择,也有非常庞大的社区,评价一款操作系统不仅要从操作系统本身的性能出发,还要看社区的活跃度,官方文档是否齐全以及配套的软件等等,开源这个特性吸引了一大批人投身于linux的开发和维护当中,这些人既有写操作系统的,也有写软件的,而各大公司都在使用Linux操作系统,因此会有很多公司捐赠服务器以及劳动力等,所以开源其实是一种新的商业模式~
4).用yum下载软件的时候怎么知道下载的软件去哪找??
yum相关的配置文件中提供了各种含了要下载软件的地址,访问外网的速度比较慢,国内提供了各种镜像源,比如清华大学镜像源,163镜像源,网易镜像源,我们就可以直接去镜像源查找就就行
2.yum的使用
①yum源
②yum安装软件
yum list 指令会把所有的软件罗列出来,太多了,我们此处就不演示了~
yum list | grep sl 在远程仓库做搜索,搜索包含 sl 关键字的软件, 太多了,我们此处也就不演示了
总结:
查软件 yum list | grep “xxx”
装软件 yum install xxxx
卸载软件 yum remove xxxx
强制卸载软件了(系统不和用户交互): yum remove -y sl
强制安装软件(系统不和用户交互): yum install -y sl
③yum源更新
yum去哪里下载软件,主要是由CentOS-Base.repo 这个仓库告诉我们去哪下载的,所以更新yum源其实就是用包含国内下载链接的仓库文件替换同类型文件即可!!!
1、下载wget工具 yum install –y wget
2、进入yum源配置文件所在文件夹 cd /etc/yum.repos.d/
3、备份本地yum源 mv CentOS-Base.repo CentOS-Base.repo_bak
4、wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
5、清理缓存 yum clean all
6、重建缓存 yum makecache
二、文本编辑器 vim
vim是Linux下的一款多模式的文本编辑器,类似于windows下的记事本,当然比记事本功能强大的多,可以认为vim相当于vscode, 核心功能就是编写代码
1.vim常用模式
"铁三角" 模式, 这三种模式是我们最常用的三种模式
2.详谈每种模式:
注意下面的操作都是对应于具体的模式的,首先要分清楚自己在哪一种模式下操作~
查看vim有哪些模式:
(1)插入模式
进入插入模式就可以直接写代码了,因此没有什么要展开的地方~
(2)底行模式
①退出vim
q-退出,w-保存写入内容,wq,保存并退出,q/w/wq后均可加 !,表示强制退出
当我们写入新的内容之后,如果没有保存直接退出,系统会提示没有保存,因此无法退出,此时可以强制加 !
有些系统配置文件不允许我们去修改,因此wq也无法保存退出,此时加 !强制保存退出
②行号
设置行号: set nu / set number
取消行号: set nonu / set nonumber
③不退出vim执行各种指令
! 指令
④搜索
搜索关键字会将关键字高亮出来,/key 向前搜索key, ?key 向后搜索Key, 然后按n, 查找下一个
(3)命令模式:
键盘比鼠标先产生,命令模式的本质就是在没有鼠标的情况下完成对代码批量化的复制粘贴删除剪切等功能,这也是命令模式的核心作用和时代背景,而命令模式下最重要的就是光标了,光标在哪,我们就操作的是哪个地方~
①光标的上下随机定位
gg: 光标定位到当前文件第一行
G:光标定位到当前文件最后一行
n+G: 光标定位到当前文件第n行
②光标的左右随机定位
^:光标定位到当前行的开始
$: 光标定位到当前行的结尾
^和$就可以限定一行,这两个符号被称为锚点符号
③方向键的控制
h 左 j 下 k 上 l 右
有时 h, l 左右操作起来太麻烦了,只能一个一个字符的移动, 而w, b, e则是以单词为单位移动
w: 向后移动,遇到单词,跳过单词,来到单词首字母,支持跨行
b: 向前移动,遇到单词,跳过单词,来到单词首字母,支持跨行
e: 向后移动,遇到单词,来到单词的最后一个字母,支持跨行
④赋值粘贴删除剪切
yy: 复制当前行
p: 粘贴已复制内容
n + yy: 复制从当前行开始的n行
n + p : 将复制内容粘贴n次
dd: 删除当前行
n + dd: 删除从当前行开始的n行
n + dd 搭配p使用: 剪切从当前行开始的n行
yw: 复制当前光标所在单词
⑤撤销操作
u: 撤销上一次操作
ctrl+r: 撤销"撤销"操作
再次u, 就可以撤销"ctrl+r"的操作,然后循环往复~
⑥行内局部性操作
~: 大小写转化
r:替换光标所在字符(输入r之后,输入要替换成为的字符即可替换)
n+r: 用一个字符替换从当前光标所在字符向后的连续n个字符
x:删除光标所在字符
n+x:删除从当前字符开始向后的连续n个字符
X:删除当前光标所在位置的前一个字符
n+X:删除当前光标所在位置的前面n个字符
⑦搜索
#: 搜索当前光标所在单词,按n可以找下一个同名单词
(4)替换模式
命令模式->替换模式: ctrl + r
替换模式->命令模式: Esc
在替换模式中,可以在不用删除字符的前提下直接将光标所在字符替换成键盘输入字符
(5)视图模式
命令模式->视图模式: ctrl + v
视图模式->命令模式: Esc
①注释与去注释
注释: j / k 两个按键上下选中区域 -> shift + i -> // -> esc
去注释: j/k两个按键上下选中区域, h/l选中左右区域 -> d
②多文件编辑
vim是一款支持多文件编辑的文本编辑器,因此在实际开发的时候哦可以同时打开多个文件,同时操作,类似vs下的同一项目的多文件
光标在哪一个文件,目前操作的就是哪个文件,退出时退的就是哪个文件
ctrl + ww, 可以进行光标在文件之间的切换
小细节:
上次退出时光标在vim的哪一行,下次进入之后还在那一行
假如代码中有一个语法错误,我们在打开文件的时候就可以直接将光标定位到该位置
3.vim配置
(1)基础配置
vim配置,核心就是将配置选项添加到.vimrc这个文件里面
vim在启动的时候,会自动扫描当前用户的家目录下的.vimrc文件,让.vimrc内部的选项生效
可以发现,下次再vim test.c 时,默认就带上了行号
关于更多的选项,大家可以上网去搜索,当然还有一些插件,这里就不展开介绍了,因此有下面自动化部署配置更快捷的方案
(2)直接自动化部署配置
如何自动化部署配置vim
只需要粘贴下面这段脚本即可完成配置~
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
这段脚本配置出来的vim默认缩进是2个字符,如果想要改成4个字符,只需要如下操作即可