前言:Linux是一个开源的操作系统,它拥有庞大而活跃的开发社区,为用户提供了丰富多样的工具和应用程序。这些工具不仅适用于系统管理员和开发人员,也适用于普通用户,可以帮助他们完成各种任务,从简单的文件管理到复杂的系统配置。从本文开始,我们将系列学习五个Linux的入门开发工具,本期我们先来介绍两个工具:yum和vim工具。
目录
1.Linux 软件包管理器 yum
尝试安装和卸载 sl
拓展yum源的安装
2.Linux开发工具
Linux编辑器-vim使用
vim的基本概念
vim的基本操作
vim正常模式命令集(在命令模式下)
vim底行模式命令集
代码注释
vim的多文件同时编辑
vim的配置
Linux一般如何安装一款软件
一般的,Linux下安装一款软件有两种方式,分别是源代码安装和rpm包安装,
源代码安装:Linux下大多数工具基本上都是开源的,这些代码一般都需要我们采用自动化脚本进行编译,在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序,自己编译安装,出了错还需要自己处理,如果源代码存在移植性问题一般不好解决。
rpm包安装:本质上就是把可执行文件拷贝到指定的文件目录中去,但是我们不可能一直都知道我们需要将程序安装到哪个目录下合适。
yum一键安装:上面的两种方式比较麻烦太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安 装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装。
软件包和软件包管理器, 就好比 "App" 和 "应用商店" 这样的关系.
我们在移动设备上安装的app,在还没有被安装之前,是在服务器里面存放着的,我们用应用商店下载安装的本质,实质上是应用商店作为客户端,软件的服务器将某些软件上架到手机厂商的服务器,应用商店通过访问手机厂商的服务器下载软件,也是因为有了手机厂商这一中间渠道,也就净化了安装软件的服务,手机厂商要想保证自己手机的服务品质,就必须对这些想要上架到手机厂商的服务器的安装包进行甄选,所以,从应用商店下载的东西,一般的品质都是比较好的。
yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, RedHat, Centos等发行版上. 这里我购买的服务器是Centos版本。
我们来简单尝试一下去安装和卸载常见的命令,一般的,我们的安装工作都在root用户下进行,root用户下安装的工具,其余的普通用户也都可以使用。下面我们以命令 sl 为例来说明,首先,我们需要找到我们对应的软件列表,类似于查询,
可以找到我们想安装的命令的名称叫做sl,.后面的是命令后缀
输入sl,一辆正在行驶的小火车就出来喽~~
类似于这种好玩的命令,我们可以在网上搜到很多,感兴趣可以安装过来和同学装一下。
那么如何卸载这个命令,我们就可以直接使用 yum remove 命令来实现,对应的选择y即可卸载,当然,如果不需要询问是否要删除的话,我们可以直接采用 yum remove -y [工具名] 来实现,其他的一些询问需求也同样适应。
yum源其实就是连接Linux服务器和软件提供者服务器的链接,yum中需要存在一定的文件来保存软件的下载地址,需要从对应的地址下载过来到自己的Linux的服务器上,但是大多数软件的服务器都在国外,国外访问不太稳定,所以,我们一般可以将我们的yum源下载并切换到国内的镜像的yum源,这样我们访问就能更稳定,一般不影响使用的话可以不换,这里就不再赘述。
对与一些很新的软件或者一些其他的工具,本地的基础yum源可能不会及时的更新,所以,就需要我们安装对应的yum源的扩展版本,同时,我们可以通过以下命令来查看对应的yum源的列表
ls /etc/yum.repos.d/
这个epel.repo 就是我们对应的yum源的拓展软件源,这里我已经安装了,这里给出安装命令,安装之后可以再次查看对应的列表看看是否有了epel.repos
yum install -y epel-release
关于安装哪些软件这个要看个人的需求,我们只需要掌握安装方法即可,就像刚买来的手机,不可能一下子就把所有的app全部安装完成,我们只是在平时使用的过程中产生了需求才会让我们取安装一些应用。
vim其实就是一款多模式的文本编辑器,类似于我们windows中的一些代码编辑软件,比如vscode等,vim的多模式模式我们需要掌握的模式一般只需要三种即可,分别是命令模式(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
三者之间的切换需要注意,其中略有一些细节需要注意:
进入vim,在系统提示符号输入vim及文件名称后,就进入vim全屏幕编辑画面:
当然,如果vim 一个不存在的文件,也就相当于直接创建了文件,
键盘输入i,进入插入模式,此时我们就能编辑我们想要的代码了。
退出vim及保存文件,在[正常模式]下,按一下shift+ : 键进入底行模式,例如:
: w (保存当前文件)
: wq (输入「wq」,存盘并退出vim)
: q! (输入q!,不存盘强制退出vim)
:set nu/nonu 设置代码 显示/不显示 行号
gg :移动光标到开头处
(n+)shift + g :定位光标到任意一行,n可以省略,省略就是定位到最后一行
shift + 4(非数字盘的那个4,上面带有 $ 符号):将光标定位到特定一行的结尾
shift + 6(^) : 将光标定位到特定一行的开头
vim可以直接用键盘上的光标来上下左右移动,但正规的vim是在命令模式下用小写英文字母 h、j、k、 l,分别控制光标左、下、上、右移一格(早期键盘没有方向键,Linux延续了老式键盘的键位)
w: 以单词为单位向前移动到单词的开头,如果不是单词则还是一个字符一个字符移动
b:以单词为单位向后移动到单词的最后一位的下一位
e:以单词为单位移动到单词的最后一位
(n) yy:将光标所在的行进行整行内容复制
(n) p:粘贴内容到当前行,n表示内容一次性粘贴n行
u: 撤销上一个操作
ctrl +r :撤销上一个撤销操作
(n) dd :剪切功能,将当前光标处的一行(往下n行),删除并复制到剪切板中,p即可赋值
shift + `(esc正下方的那个键) : 按住即可将光标所在行从头至尾的字符进行小写转大写,大写转小写。
(n) r :将从当前光标所在位置向后的n个位置的字符都覆盖式替换为接下来我们自己手动输入的字符
shift +r (相当于切换成大写模式输入 R):切换为replace模式,直接根据键盘接下来输入的字符从当前光标开始覆盖式替换字符
(n) x :向光标后删除一个(n个)字符
set nu /nonu:显示/不显示 行号
shift + 3 (带#的3) : 检索当前光标所在区域的全部位置的单词,之后我们一直按 n 可以快速遍历这些位置的对应的同名单词,方便查找
/ : 先按 / 键,再输入想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按 n 会往后寻找到您要的关键字为止
shift + ? : 先按键shift + ? ,再输入想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按 n 会往前寻找到您要的关键字为止。
?和 / 查找单词有什么不一样呢?
使用“/” 进行正向查找:按下“/”键,然后输入要查找的单词,按下回车键。vim会从当前光标位置开始往后查找匹配的单词。按下“n”键可定位到下一个匹配项,按下“n”键可定位到前一个匹配项。
使用“?”进行反向查找:按下“?”键,然后输入要查找的单词,按下回车键。vim会从当前光标位置开始往前查找匹配的单词。按下“n”键可定位到上一个匹配项,按下“n”键可定位到后一个匹配项。
shift +w :将文件保存起来
shift +q (!) :退出,如果无法离开vim,可以在后跟一个 ! 强制离开vim。
shift +wq : 退出并保存文件
批量化注释
在命令模式下,将光标定位到我们想要注释的行上,按ctrl + v 进入视图模式,接着按我们的 j和k两个键(按上下的方向键也行)选到我们想要注释的末行,接着按 shift + i 进入插入模式,输入我们的注释符号 “// ”,然后按esc,我们就可以将我们选中的行进行批量注释了。
批量化删除注释
同样的,我们还是 在命令模式下,将光标定位到我们想要注释的行上,按ctrl + v 进入视图模式,接着按我们的 j和k两个键(按上下的方向键也行)选到我们想要注释的末行,这里需要注意,删除注释必须注释符号的两列 ‘/’ 符号都选中,才能一次性删除注释,用我们的h和l 键配合向左右选中即可, 然后再按一下d即可批量化删除注释。
下面,我们就可以更新一下vim的模式图了:
我们在一些编译器中编写代码的时候,能够同时编写多个文件,比如头文件和源文件等,同样的,我们在vim中也可以实现这个功能,我们可以在vim编辑一个软件的同时,进入底行模式,输入命令 vs [新文件名],这样我们就可以同时分屏创建两个文件,同时进行编写。
多任务如何切换?
文件虽然有多个,但是光标只有一个,一切以光标为准,我们在编辑一个文件时,想要跳转到另一个文件,一种最简单的方式,就是按 ctrl +ww ,从当前文件切换到另一个文件。
基础配置
vim在启动的时候,会自动扫描用户家目录下的 .vimrc文件,让该文件内部的内容生效,vim配置的原理,核心就是向 .vimrc文件中添加更多的个性化的配置选项,vim也可能会需要各种插件,以满足除了一些基础功能之外的其他的个性化功能。
自动化部署配置(C++)
这里,我们尽量在普通用户下,目前只支持 Centos7 x86_64版本,我们在命令行中输入以下命令:
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
接着拿到我们的root用户的密码,输入密码以继续安装。
如果中途出现信任列表的问题,我们需要在root用户下,打开文件
vim /etc/sudoers
找到第100行左右(不同的文件可能会有差异),看到类似下方的模块:
进入插入模式找到对应的信任列表添加自己的用户名再返回安装即可,注意别忘了添加用户之后先进入底行模式保存再退出。
安装完成,按提示命令输入即可配置成功。
效果图:
这个配置,在写代码的时候自动缩进是两个字符,如果需要改的话,我们可以直接cd到home目录,在目录下面找到一个叫 .vim的文件,
然后 vim .vimrc ,接着直接搜索2,将2改成4,然后保存退出即可。