常用工具:
yum: 软件包管理工具
查看软件包 yum list ;yum list | grep +你要找的软件包名称(匹配查找)
安装软件包 yum install+你要安装的软件包名称(需要root权限)
卸载软件包 yum remove+你要卸载的软件包名称(需要root权限)
vim:Linux下编辑器
vi/vim+filename(该文件可以不存在,相当于也创建了该文件);
因为vim中默认不能使用鼠标,因此为了完成能够插入,删除,复制,粘贴各个操作
vim将才做分为了很多模式:12种模式,常用三种:
插入模式:插入数据
普通模式:完成命令操作(移动光标,复制,粘贴,删除,撤销)
移动光标:h/j/k/l w/b按单词移动 ctrl+b/ctrl+f上下翻页 gg/G 头尾
复制:yy 复制光标所在行 nyy 从光标所在行开始向下复制n行数据
粘贴:p:向光标所在行下一行粘贴,P:向光标所在行上一行粘贴
删除(剪切):dd 删除光标所在行 ; ndd 从光标所在行开始向下删除n行数据
x 删除光标所在字符;dw 删除单词;D 删除光标后边的数据;
撤销:u ; 恢复撤销:ctrl +r
底行模式:保存文件,退出编辑(:w :q :wq :q!)--/string 向上查找字符串--/string向下查找字符串;
模式切换:
普通模式-》插入模式:i/a/o
插入模式-》普通模式:esc键
普通模式-》底行模式::
底行模式-》普通模式:esc键
vim->普通模式->插入模式->底行模式
插入模式:i 从光标当前位置开始输入;
a 从光标下一个位置开始输入;
o 插入新的一行,从行首开始输入;
gcc:编译器
gcc将高级语言(C语言)编译成机器可以识别的语言
预处理:去掉注释,展开代码
编译:语法语义纠错,将C语言代码解释成汇编代码
汇编:将汇编代码解释成为机器指令
链接:链接库文件中的代码
静态链接:后缀名一般为“.a", 链接静态库,将库中代码拷贝到程序中,程序比较大,但是运行时不需要依赖静态库的存在
静态库如果多个程序使用了相同的静态库,运行时程序被加载到内存中,会出现多份冗余代码
动态链接:后缀名一般为“.so", 链接动态库(共享库/运行时库),记录库中函数位置符号信息,程序比较小,但是运行时需要依赖动态库的存在
而动态库在内存中“共享”同一份动态库代码;---------------------------------------------“gcc默认是动态链接”
gcc常用选项: -E 只进行预处理;-S 只进行编译;-c 只进行汇编;-o 用于指定生成的文件名称;-static 使用静态链接;!gcc查看最近的一次命令;history 查看最近所有的命令
gdb:调试工具
调试程序的运行过程--调试bug
1.(程序调试的前提)向程序中加入调试符号信息--gcc默认生成的时release发布版程序,可执行程序中没有加入调试符号信息
gcc -g 生成dubug版可执行程序main ---gcc -g main.c -o main
2.加载程序:gdb ./main