Linux环境基础开发工具使用(yum、vim、gcc/g++、gdb、make、git)

文章目录

  • yum
  • vim
  • gcc/g++
  • gdb
  • make
  • git

yum

首先使用yum之前要切换到root用户。yum相当于包管理器,起到安装软件,卸载软件的作用。
安装软件:yum install [软件名称]
卸载软件:yum remove [软件名称]
查看当前都有哪些软件 yum list | grep [xxx]

vim

vim是一种编辑器,用来编辑文本,格式:vim [文件名称]
vim的三种模式:普通模式、插入模式、底行模式。三者之间切换的快捷键如图所示:
Linux环境基础开发工具使用(yum、vim、gcc/g++、gdb、make、git)_第1张图片
普通模式切换到插入模式后:
i:光标位置不变
I:光标位置放置该行首位
O:向上新建了一行
o:向下新建了一行
A:光标位置放置该行行尾
a:光标位置向后移动一位
退出vim
底行模式下输入:
wq:保存之后退出
q!:强制退出
wq!:强制保存退出
普通模式下的操作:
移动:
1.上下左右键
2.h(光标向左移动)j(光标向下一行移动)k(光标向上一行移动)l(光标向右移动)
3.gg:回到文本的首部 G:移动到当前文本的尾部
4.gg=G:调整代码格式
删除:
x:删除光标当前所在字符
X:删除光标前一个字符
dd:删除光标所在行的数据
[数字] dd:从光标所在行开始,删除(数字)行数据
复制:
yy:复制光标所在行的数据
[数字] yy:从光标所在行开始,复制(数字)行数据
粘贴:
p:向光标的下一行去粘贴
P:向光标的上一行去粘贴
替换:
r:替换光标所在字符
R:替换多个字符。esc退出
撤销:
u:撤销上一次的操作
ctrl+r:反撤销
更改:
cw:更改光标当前所在字,并且会进入到插入模式
跳:
[数字] G:跳跃到具体的行
vim的底行模式命令
set nu:设置行号
set nonu:取消行号
%s/[目的字符串]/[源字符串]/g:全文替换
s/[目的字符串]/[源字符串]/g:替换光标所在行
[数字1,数字2]s/[目的字符串]/[源字符串]/g:替换数字1到数字2当中的源字符串

gcc/g++

gcc编译C代码,g++编译C++代码。
生成可执行程序经过四个步骤:(esc->iso)
预处理:gcc/g++ -E [源码文件] -o [预处理之后文件名称].i
编译:gcc/g++ -S [源码文件] -o [编译之后的文件名称].s
汇编:gcc/g++ -c [源码文件] -o [汇编之后的文件名称].o
链接:gcc/g++ [xxx].o -o [可执行程序]
小结:四步可合为一起
gcc/g++ [源码文件] -o [生成可执行程序名称]
例如:gcc test.c -o test

gdb

gdb为调试程序,调试之前,在编译的时候需要执行-g命令行参数,生成可执行程序为debug版本。例如:gcc test.c -o test -g
首先:gdb [可执行程序]
r:让代码跑起来
l:查看源码文件
b:设置断点,例如:b 5 在第五行设置断点
i b:查看断点信息
disable [断点序号]:使当前断点不生效
enable [断点序号]:使当前断点生效
delete [断点序号]:删除当前断点
n:逐过程
s:逐语句
c:继续执行
p:打印变量的值
q:退出调试
注意:程序崩溃时,会产生coredump文件,coredump文件叫做核心转储文件。保存的是程序在崩溃前正在做的事,以及各变量之间的内容。

make

make是自动化解释工具,解释makefile文件内容。其作用就是生成可执行程序。
makefile编写规则:目标对象、依赖对象、编译命令
目标对象:想要生成的目标对象
依赖对象:生成目标对象的时候依赖的文件
编译命令:使用依赖对象生成目标对象的方法
在vim编辑中,如图所示:
Linux环境基础开发工具使用(yum、vim、gcc/g++、gdb、make、git)_第2张图片
make解释makefile的规则
1.如果目标对象最后一次的修改时间距离现在比较近,则认为目标对象比较新,不需要重新生成目标对象。
2.如果有多个目标对象,只服务第一个。
3.如果依赖对象不存在,则会在当前的makefile的编写规则中查找生成依赖对象的方法。

git

git版本管理工具,管理代码仓库,步骤如下:
自己选择目录
git clone [远程仓库的网址]
在自己仓库目录下
1.git 标记
git add [文件名/文件夹名]
2.提交到本地仓库
git commit -m “本次提交的日志信息”
3.推送到远端仓库
git push origin master

删除远端仓库内容
1.git rm [文件名/文件夹名]
2.git commit -m “日志信息”
3.git push origin master

git pull:从远端仓库将内容来到本地linux机器的仓库当中。

你可能感兴趣的:(Linux,linux,vim,gcc/gdb编译调试,makefile,git)