文章目录
一、yum工具
1.Linux中安装软件的方法:
(1)源代码安装(不推荐):把源代码编译,形成可执行,编译太麻烦
(2)rpm软件包安装(不推荐):安装的本质就是拷贝,把可执行程序拷贝到指定路径下即可(不知道下载哪个软件包,不知道哪个软件包是对的,不知道某个软件是否还依赖其他软件)
(3)yum一键式安装
2.什么是yum?
类似于手机上的软件商店或者应用管家。
🎗️应用商店中的特定的App没有被我安装的时候,在哪里?
在服务器端。
🎗️安装软件的本质是下载和安装
🎗️应用商店实质是一种客户端软件
🎗️
🎗️评判一款操作系统好或不好的标准:
每一款操作系统都匹配上它的社区、官方文档、配套软件,叫做对应的生态。
例如:
某款操作系统社区非常活跃,各种不一样的版本和历史上暴露出来的Bug已全部被修正,这个软件配套的我们所用的监视软件、开发软件、各种库支持的非常好,他的生态非常完整,社区非常活跃,文档非常全面,所以我觉得这个操作系统比较好,更重要的是很多公司都在用。)
🎗️很多大公司在用这款操作系统是它的生态好的表现。为什么呢?
(1)大公司的技术团队总是在筛选
(2)大公司是问题复现的高频场景。所以大公司在用,操作系统的问题很快就会暴露,尽快暴露就能被尽快修复。
(3)Linux操作系统本身是开源的,其社区会吸引一大批使用操作系统的人,有的搞内核,有的做应用开发,一定会有一大批人基于应用开发在Linux中开源一大批对应的开源软件,这些开源软件一定会为Linux操作系统提供软件功能支持。
🎗️当使用应用商店时,他怎么知道到对应的服务器上下载app呢?
因为客户端软件中内置了域名、IP地址这样的概念。
🎗️yum相关的文件中,一定有文件里面保存的是:我要去哪里下软软件。
🎗️
3.yum源更新
其实就是用包含国内下载链接的仓库文件,替换同类型文件即可。
二、Linux编辑器–vim
1.IDE例子
IDE是指集成开发环境。
比如VS就是集编译、调试、编写、运行、支持多语言为一体,这样的环境可称为IDE(集成开发环境)。
2.vim
🎗️vi /vim 就是一款文本编辑器。
🎗️vim是一款多模式的文本编辑器。
🎗️文本编辑器的核心工作:对文本进行增删查改。
(1)vim的常用模式及切换模式
一共有12种模式:6种基本模式和6种附加模式。
(2)底层模式常用命令
🎗️:wq 保存并退出
🎗️:w! 立马强制写入
🎗️q! 强制退出
🎗️:set number或者:set nu 可调出行号
🎗️:set nonu 不要行号
🎗️:! 命令(不退出vim运行命令,可以在不退出vim情况下进行查看、编译、运行等动作)
🎗️:/ 要查找的关键字(可进行搜索关键字,按键n可以跳转到下一个搜索该关键字的结果)
(3)插入模式常用命令
移动光标
🎗️英文字母H、J、K、L分别控制光标的左、下、右、上移动一格。
🎗️$(也就是shift+4)移动到光标所在行的结尾
🎗️^(也就是shift+6) 移动到光标所在行的行首
🎗️w 以单词为单位进行向后移动,支持跨行
🎗️b 以单词为单位进行向前移动,支持跨行
🎗️gg 定位到代码第一行
🎗️G(也就是shift+g) 定位到代码最后一行
🎗️n+G 定位到代码的第n行
删除文字
🎗️x 每按一次,删除光标所在位置的一个字符
🎗️nx 删除光标所在位置包括自己在内的后面的n个字符
🎗️X 向前删除光标所在位置的一个字符
🎗️nX 向前删除光标所在位置的n个字符
🎗️dd 删除光标所在行;剪切功能(dd完再p,可完成剪切功能)
🎗️ndd 从光标所在行开始删除n行;剪切功能(ndd完再p,可完成多行剪切功能)
复制
🎗️yw 复制一个单词
🎗️nyw 复制n个字符
🎗️yy 复制一行
🎗️nyy 复制n行(包括当前行)
🎗️p 粘贴内容到当前行之后
🎗️np 批量粘贴,将复制的内容粘贴n次
替换
🎗️r 替换光标所在处的字符
🎗️nr 替换包含光标所在处和它后面的n个字符(之后比如按下x,可以将n个字符全部替换成x)
🎗️R(也就是shift+r)切换到替换模式。从光标所在处,将输入的字符覆盖式替换原有的字符
🎗️~(也就是shift+`) 文本大小写相互转换
🎗️#(也就是shift+3) 查找同名单词(按键n可进行单词跳转)
撤销
🎗️u 对刚刚的操作撤销
🎗️ctrl+r 撤销的恢复(如果对撤销后悔)
(4)视图模式常用命令
批量化注释
🎗️ctrl+v (进入视图模式)—>j、k按键上下选中区域(注意选中区域是光标位置之前的内容)–>shift+i(也就是I)—>输入//(在最左侧)—>esc
批量化删除注释
🎗️ctrl+v(进入视图模式)–>h、j、k、l按键选中区域(删除//时要删除两列,选中时选两列)
(5)补充内容
I.vim本身自己也可以创建文件
🎗️vim一个不存在的文件名,在vim文本编辑器中编辑文件内容或者不编辑,只要在底行模式中输入命令:w(即保存文件的意思),该文件就会被创建
II.创建文件的三种方法
🎗️touch 文件名
🎗️>文件名 (重定向符号创建文件)
🎗️vim 文件名 (:w)
III.裸的vim也支持多文件编辑
🎗️在vim的底行模式中输入**:vs 文件名** 可以以分屏的模式让我们看到两个文件的代码,两侧的代码可同时进行编辑(双屏模式下再输入命令,可分三屏)
🎗️无论你打开所少个文件,光标只有一个!
光标在哪一个区域,表示当前正在编辑哪个文件!
ctrl+ww 光标切换窗口
发现:光标在左边或右边,底行只有一个。
只要光标当前在哪个文件里,那么底行对应相应文件底行。(一切以光标为主!)
IV.vim 文件名 +n
🎗️vim编辑文件时,退出时光标在哪一行,再次进来该文件时光标还在上一次的位置
🎗️vim编辑文件,然后用gcc编译文件,出现报错信息,报错信息中会有出错的行号,想要打开编辑文件时将光标定问到该行,使用命令vim 文件名 +行数(注意这里在历史退出时光标应在第一行,其次行数这里的数值应是报错行号-1)
(6)vim的配置
🎗️基础配置—>初步理解vim配置的原理
🎗️直接自动化部署配置
https://gitee.com/HGtz2222/VimForCpp?_from=gitee_search
点击上面的链接在文章中找到安装方法中的安装链接,复制到命令行当中,输入root密码,进行下载,下载之后根据提示重启即可直接自动化部署
三、Linux编译器-gcc/g++的使用
1.适用于什么语言
🎗️C语言用gcc/g++编译都可以
🎗️C++语言只能用g++编译
2.快速查看
(1)命令
命令:gcc code.c
命令:gcc code.c -o mybin.exe
(2)注意点
🎗️C++文件名有多种写法,有.cpp或者.cc或者.cxx这样的后缀
🎗️细节问题:Linux系统中文件后缀没有意义。但为什么编译gcc code.txt编译不过呢?
因为系统认为后缀无意义,不代表gcc不关心后缀。
3.回忆一下,程序的翻译
(1)须知
(2)先有编译器还是先有语言?
(3)程序的翻译过程
🎗️条件编译的意义(了解即可)
🎗️详解链接
链接过程就是把编译形成的.o文件和系统库链接起来形成可执行程序的过程。
🎗️详解链接中的库