【Linux工具】-yum/gdb
一,yum
1,简介
- 在Linux下,下载软件通常的方法是下载源代码,然后进行编译得到可执行程序。
- 但是,下载源代码的方法太麻烦了,于是有的人会把源代码提前编译好,做成软件包放到服务器上,通过软件包管理器(yum)很便利的获取编译好的软件包,进行安装。
- 软件包就类似于手机上的各种APP,软件包管理器就好比应用商店。
- yum就是一种Linux下非常常用的软件包管理器。
2,软件下载
下载之前可以使用
yum search
命令进行查询要下载的软件包。
但是,这个命令不是很好用建议使用下面的命令
yum list | grep "要搜索的内容"
例如:
yum list | grep "sl.x86_64"
它会将所有与sl.x86_64相关的软件包打印到屏幕上供你挑选。
如何下载呢?
sudo yum install -y sl.x86_64
出现Complete的时候,就说明那下载成功了。
这就是下载软件的整个流程。
3,软件删除
当你不在想使用某个软件的时候,你可以删除它。
sudo yum remove -y sl.x86_64
4,yum源与扩展yum源
那么软件包究竟是如何下载的呢?要下载的软件储存在哪里呢?
解决上面的问题,不得不提的就是yum源。
yum源
所谓,yum源其实就是yum的一个配置文件,它里存储了各种软件包的下载地址。它的路径是:
/etc/yum.repos.d/
- Centos-Base.repo:yum源
- epel.repo:扩展yum源
当你下载某个软件时,首先会在yum源里搜索软件包的下载路径,如果搜索不到就会到扩展yum源下继续搜索。
如果你的系统下没有扩展yum源,执行下面命令,系统会根据你的base yum源,找到与其匹配的扩展yum源
sudo yum install -y epel-release
更新yum源
- 将老的yum源进行备份 centOS Base.repo
- wget 获取进的配置文件 --可以网络搜索到
- mv 重命名为centOS Base.repo
- 执行yum clean all 和 yum makecache命令
5,常见选项
- yum list | grep XXX 可以搜索要下载的软件
- sudo yum -y install XXX 下载软件
- sudo yum -y remove XXX 删除软件
- yum search XXX 在所有软件包中搜索指定关键字的软件包
- yum clean all 清除缓存中老旧的的文件和软件包
- yum makeache 将服务器的软件包信息缓存到本地
- yum upgrade 升级所有软件包但是不升级软件和系统内核
- yum update 升级所有包的同时,升级软件和系统内核
二,gdb
1,简介
gdb时Linux下的调试器,可以对你写的程序进行调试。
但是与常用的有图形化界面的IDE中的调试有所不同,gdb是靠指令运行的以及调试过程中的每一步都是靠输入相应的指令。
程序的发布方式有两种 -Debug -Release
Linux 下 gcc/g++生成的可执行程序默认是release版本。
如果想要用gdb调试就必须生成Debug版本,可以使用gcc -g的命名生成Debug版本
2,gdb相关指令
- l (line)n :显示第n行的代码,连续回车是就会将代码显示完全。也可以 l 文件:函数名/行号。
- b n(行号):打断点
- info b:查看断点信息
- d 断点编号 :删除断点
- disable breakpoint:关闭断点
- enable breakpoint:开启断点
- n(next):逐过程调试
- s(step):逐语句调试
- until n:在函数内,进行指定位置跳转,执行完区间内的代码
- finish:直接调试完当前函数
- c(continue):从一个端点跳到下一个断点
- r:开始调试(与VS下的F5相似),若没有断点就会直接运行完整个程序。
- p:查看某个变量的值
- display:长显示某个变量
- undisplay+长显示变量编号:取消长显示
- d breakpoints:删除所有断点
- bt:查看调用关系
- q:退出
- set var:修改变量的值
来源地址:https://blog.csdn.net/Djsnxbjans/article/details/128654829
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341