目录
4.Linux项目自动化构建工具 -- make/Makefile
4.3.1 Access time/Modify time/Change time
4.4.1用于编译链接C语言代码的makefile文件的一种版本
1.软件包管理器
1.1Linux下的安装方式
1.源码安装 -- 把一个程序源代码拷贝到本地,然后进行编译,得到可执行程序。
2.软件包安装(rpm) -- 把一些常用的软件提前编译好,做成软件包放在一个服务器上,获取到该软件包直接进行安装。
3.通过包管理器进行安装(yum/apt(apt-get)) -- 一个软件能正常运行不仅仅需要该软件的软件包,还需要许多该文件需要的依赖包和依赖文件,缺失依赖包可能会带来依赖缺失以及版本兼容性的问题(比如该软件需要使用C++20的特性,但是本地只有C++11,所以这时就会产生版本兼容的问题),通过包管理器进行安装可以直接将一个软件所需的依赖包也进行安装,可以有效的解决依赖缺失和版本兼容的问题。
安装的本质:(1)通过网络将需要安装的文件下载下来。(2)将下载下来的文件拷贝到系统对应的配置文件当中 -- Linux下的配置文件都在根目录下的子目录中,所以在Linux下进行安装的时候需要使用root权限。
1.2什么是软件包
在Linux下安装软件一个通常的办法是下载到程序的源代码,并进行编译,得到可执行程序。但是这样太麻烦了,于是有些人把一些常用的软件提前编译好,做成软件包(可以理解成windows上的安装程序) 放在一个服务器上,通过包管理器可以很方便的获取到这个编译好的软件包,直接进行安装。软件包和软件包管理器就好比"APP"和"应用商店"这样的关系。
yum是Linux下非常常用的一种包管理器。主要应用在Fedora,RedHat,CentOS等发行版上。apt/apt-get主要应用在Ubuntu上。下面用apt进行介绍
注:使用包管理器安装软件时,需要网络畅通。可以通过ping www.baidu.com进行网络是否畅通的验证。
1.3软件包由谁提供
由对应发行版的社区提供,如www.centos.org。这种社区一般是放在云服务器上的。
为什么我的操作系统能自己找到下载链接呢?因为操作系统在下载的时候就内置链接。Linux是外国人发明的,所以内置的链接基本上都是国外的生态,下载就会变慢。所以国内的厂商比如清华大学、阿里云等就把国外的软件包镜像到了国内,通过修改Linux中的镜像源,就能改变下载的下载链接。
1.4查看软件包
通过yum/apt list命令可以罗列出当前一共有哪些软件包。由于包的数目可能非常多,这里我们可以使用grep命令只筛选出我们关注的包。例如:
apt list | grep lrzsz
base -- 稳定软件源,epel -- 扩展软件源 -- CentOS系统下可以观察到。
1.5Ubuntu下如何安装卸载软件
安装软件:
语法:sudo apt/apt-get install 软件名
例如:
sudo apt install sl
卸载软件:
语法:sudo apt/apt-get remove 软件名
知识点1:
如果在使用sudo对普通用户提权进行安装软件时出现如下报错:
使用su - 命令切换到root用户,然后 vim /etc/sudoers 打开这个文件, root ALL(ALL:ALL) ALL 下面一行加上 [用户名] ALL(ALL:ALL) ALL.
1.6更改镜像源
centOS下就是将/etc/yum.repos.d/中的下载链接进行更换。
Ubuntu下就是将/etc/apt/sources.list中的下载链接进行更换。
这里不做具体操作,可以在网上搜索对应镜像的链接然后进行修改,清空缓存并重新生成缓存即可。
2.Linux编辑器 -- vim
2.1vim的基本概念
vim的三种模式(其实有很多种模式,目前介绍三种),分别是命名模式(command mode)、插入模式(insert mode)和底行模式(last line mode),各模式的功能区分如下:
正常/普通/命令模式(Normal mode):控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式或者底行模式。
插入模式(Insert mode):只有在插入模式下才能进行文字输入,在命名模式下按i进入插入模式,按Esc可回到命令模式,该模式是用的最频繁的编辑模式。
底行模式(Last line mode):文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。在命令模式下按shift + ;进入该模式,要查看所有模式:打开vim,底行模式下直接输入
:help vim-modes
2.2vim的基本操作
1.进入vim,输入 vim [文件名] [行号],就能进入vim全屏幕编辑画面。加行号可以使打开文件后直接将光标定位到对应行。
2.[正常模式]切换至[插入模式]:输入 'a/i/o' 即可。 进入插入模式后会在底行显示如下字符串。
3.[正常模式]切换至[底行模式]:输入'shift' + ';' ,底行会显示 ':' 。
4.[正常模式]切换至[视图模式]:输入'shift' + 'v',底行会显示如下字符串。
批量化注释:
(1)ctrl + v:进入视图模式。
(2)利用h,j,k,l,上下左右移动进行区域选择。[正常模式]下的命令也能用。
(3)shift + i 进入插入模式,输入//,按Esc结束操作。
5. 从其他模式切换至[正常模式]:按Esc键。
6.退出vim及保存文件,底行模式下输入以下字符:
:w -- 保存当前文件
:wq -- 保存当前文件并退出vim
:q -- 不保存退出vim
:q! -- 不保存强制退出vim