Linux相关开发工具
Linux软件包管理器yum
在Linux下安装软件, 一个通常的办法是下载程序的源代码, 并进行编译, 得到可执行程序。
这样太麻烦, 于是有人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装。
软件包和软件包管理器, 就好比 "App" 和 "应用商店" 这样的关系。
yum list 查看软件列表
可以提供管道来查找自己所需要的软件,例如
yum list | grep lrzsz 查找软件列表中的lrzsz
如何安装软件:
sudo yum install [你需要安装软件的名称]
卸载软件:
sudo yum remove [你需要卸载的软件的名称]
Linux vim编辑器
vim常见的三种模式:命令模式,插入模式,底行模式。
命令模式: 控制屏幕光标的移动,字符、字或行的删除
插入模式:只有在插入模式下,才可以做文字输入,按「ESC」键可回到命令行模式。在命令模式下输入i即可进入插入模式
末行模式:文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模 式。要查看你的所有模式:打开vim,底行模式直接输入。
vim编辑器相关操作
光标定位:
命令模式下
shift + 4 = $ 光标跳转到所在行的结尾
shift + 6 = ^ 光标跳转到所在行的头部
shift + g = G 整个代码尾部
gg 整个代码头部
n + shift +g 跳转到光标指定行 n为行号
文本复制
命令模式下,在光标所在行:
yy 复制光标所在行的内容(nyy:复制从光标所在行后的n行内容)
p 粘贴(np 粘贴n行内容)
文本删除
dd 删除光标所在行的内容 ndd 删除n行内容
使用dd完删除之后,再p一下,就能实现windows上面的剪切操作
文本行大小写切换 shift + ~
shift + r = R 批量替换字符内容
r 光标所在的字符替换 nr 光标所在n个字符替换
x 删除光标所在位置的一个字符 nx 删除光标所在位置后面(包含光标所在位置)n个字符
X删除光标前面一个字符 nX删除光标前面n个字符
u 撤销 ctrl+r 取消撤销操作
底行模式:设置行号 set nu 取消行号 set nonu
vim相关配置语法高亮,自动补全等相关设置可自行百度
vim 下同时开两个文件 在底行模式下输入:vs [你需要打开的文件] ctrl+ww 光标跨屏操作
vim文件保存和退出
在底行模式下输入:wq 即可保存退出 q! 不保存退出
Linux编译器-gcc/g++使用
程序运行的过程:
预处理(头文件展开,去注释,宏替换,条件编译)
编译(生成汇编语言)
汇编(将汇编语言变成机器可识别的二进制)
链接(生成可执行文件)
函数库一般分为静态库和动态库两种
静态库是指编译链接时,把库文件的代码全部加入到可执行文件中,因此生成的文件比较大,但在运行时也 就不再需要库文件了。其后缀名一般为“.a”
动态库与之相反,在编译链接时并没有把库文件的代码加入到可执行文件中,而是在程序执行时由运行时 链接文件加载库,这样可以节省系统的开销。动态库一般后缀名为“.so”
Linux项目自动化构建工具-make/Makefile
make 是一条命令 Makefile 是一个文件
.PHONY 修饰的对象是一个伪目标,该目标总是被执行的
第一行代码:processon依赖process.c test.c
当需要执行的时候,直接make
清理的时候 :make clean