常用的工具介绍

常用的工具介绍

yum

  • 在Linux中如何进行软件的安装?

    软件是在服务器上,服务器提供的下载服务,因此才可以下载。

sudu yum list | grep sl
sudo yum -y install XXX
sudo yum -y remove XXX

在这里插入图片描述

  • 正如我们的软件管家,这个软件管家,它怎么知道去哪里下载呢?

    一般都是内置下载链接的地址

    yum怎么知道我要下载的软件在哪里呢?

    yum有自己的配置文件,也就是yum源,yum源在 /etc/yum.repo

    在这里插入图片描述

  • 怎么更新yum源呢?

    1. 先进行备份老的yum源 Centos-Base.repo
    2. wget 获取新的yum源配置文件 --可以通过网络搜索得到
    3. mv重命名为Centos-Base.repo
    4. yum clean all && yum makecache

    如果你想安装的软件找不到,有可能就是在扩展的yum源中:epel.repo

    sudo yum install -y epel-release  # 根据base yum源,帮我们找到和他匹配的扩展yum源
    sudo yum install -y
    

vim使用

  • vim是一种多模式的编辑器,我们最常用的有3~5种模式

    命令模式(默认打开就是命令模式),插入模式,底行模式,视图模式,替换模式

  • vim就是单纯的一个编辑器

  • vim指令集

    yy/nyy:复制当前行

    p/np:粘贴复制的内容

    u:撤销命令,撤销刚刚的操作

    ctrl+r:对撤销进行撤销

    dd/ndd:剪切,3dd剪切3行,如果只进行dd操作不进行粘贴就是删除操作

    光标定位:

    shift g:将光标定位到文档的结尾

    gg:将光标定位到文档的开始

    n shift g:定位到n行

    shift 4:将光标定义到文本行的结尾

    shift 6:将光标定义到行的开始

    w,b:按照单词进行前后移动,w向后移动,b向前移动

    shift ~:进行快速大小写切换

    r:替换光标所在的字符,支持nr,连续替换

    shift r:进入替换模式

    nx :行内删除,支持nx,从前往后删

    shift x:从后往前删

    h:往左走

    j:向下移动

    k:向上移动

    l:向右移动

    进入插入模式:i a光标向后移动一个 o光标另起一行

    底行模式:/xxx搜索

    :wq! 保存并且强制退出

    :!+操作 不退出vim进行操作

    :set nu/nonu

    :%s///g 替换

    :/key

    :!command

    :vs file 进行分屏

    在vim分屏下ctrl ww 进行切屏

  • vim的配置

    vim在启动的时候会自动在当前目录下寻找vim的配置文件,一个用户,一个vim配置

    .vimrc----在这个文件里进行配置

gcc/g++

gcc是专门用来编译C语言的,g++是专门用来编译C++的

程序的翻译包括预处理-编译-汇编-链接

  1. 预处理–头文件展开,条件编译,宏替换,去注释
    • -E:从现在开始进行预处理,处理完之后就停下来,生成.i文件
  2. 编译–c语言->汇编语言
    • -S:编译完停下来生成.s文件
  3. 汇编–(汇编->可重定位二进制文件,不可以被执行,bin.obj)只把我们自己的代码翻译成二进制目标文件
    • -c:从现在开始进行程序的翻译,汇编完之后就停下来生成.o文件
  4. 链接(将我们自己形成的obj文件和库文件进行合并,形成可执行程序)
    • 直接gcc .o文件就行,就可以生成可执行文件了。

记忆:ESc——>iso

g++也是一样的操作

ldd命令:检测可执行程序依赖了哪些库

在linux环境下,库在/usr/include下,linux系统默认已经携带了语言级别的头文件和语言对应的库。

库分为两种,动态库和静态库。linux系统默认使用动态链接和动态库。

  1. 静态库:libxxxxxx.a
  2. 动态库:libxxxxxx.so
    在这里插入图片描述
  • 动态库和静态库的区别

    动态库 (dynamic library) 和静态库 (static library) 是两种不同类型的库文件。

    静态库是在编译时直接嵌入到可执行文件中的,所以可执行文件体积会变大。它们可以被多个程序共享,但是当库文件被修改或者升级时,需要重新编译所有使用它的程序才能生效。

    动态库则是在程序运行时加载的,因此可执行文件体积会小一些。它们也可以被多个程序共享,而且当库文件被修改或者升级时,只需要替换库文件即可,不需要重新编译程序。

    需要注意的是,不同平台和编译器对于静态库和动态库的实现方式可能不同。一般来说,Windows 系统的 DLL 文件为动态库,而 Linux 系统的 .so 文件为动态库

    只要把动态库删掉,所有依赖这个动态库的程序就无法执行了

    一般的云服务器,默认都只有动态库,你如果在静态链接的时候可能会报错。

  • 报错时候的解决

    sudo yum install -y libc-static   #安装C的静态库
    

    自动化构建工具make/Makefile

    make是一个命令,Makefile是一个文件


    多个编译和多个链接利用gcc和g++比较麻烦,利用make和Makefile实现一定程度的自动化构建
    在这里插入图片描述在这里插入图片描述

git

安装git

yum install git

gdb

gcc/gdb默认形成的可执行程序是release版本的

l 1#从第一行查看程序

b 17 #在第17行打断点

r #运行程序

info b #查看断点信息

disable breakpoint 2 #使断点编号为2的断点设置成空心断点

enable breakpoint 2 #使断点编号为2的断点设置成实心断点


gdb

gcc/gdb默认形成的可执行程序是release版本的

l 1#从第一行查看程序

b 17 #在第17行打断点

r #运行程序

info b #查看断点信息

disable breakpoint 2 #使断点编号为2的断点设置成空心断点

enable breakpoint 2 #使断点编号为2的断点设置成实心断点


在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值