• linux篇【3】:Linux 环境基础开发工具


    目录

    一.Linux 软件包管理器 yum

    1.什么是软件包

    2.centos 7中安装形式

    3.yum安装好处:

    4.yum工具的常用选项

    (1)yum list | grep sl        

    软件包信息介绍:

    (2)sudo yum install sl ——安装软件

    (3)sudo yum remove sl ——卸载软件

    5.yum相关命令

    二.Linux编辑器-vim

    1.vim是什么?

    2.为什么要学vim?

    3.vim的三种模式

    (1)底行模式下的操作

    (2)三种模式转换关系

    4.命令模式下的文本批量化操作:

    5.整个代码编译的流程


    一.Linux 软件包管理器 yum

    1.什么是软件包

    Linux 下安装软件 , 一个通常的办法是下载到程序的源代码 , 并进行编译 , 得到可执行程序 .
    但是这样太麻烦了 , 于是有些人把一些常用的软件提前编译好 , 做成软件包 ( 可以理解成 windows 上的安
    装程序 ) 放在一个服务器上 , 通过包管理器可以很方便的获取到这个编译好的软件包 , 直接进行安装 .
    软件包和软件包管理器 , 就好比 "App" " 应用商店 " 这样的关系 .
    yum(Yellow dog Updater, Modifified) Linux 下非常常用的一种包管理器 . 主要应用在 Fedora, RedHat,
    Centos 等发行版上 .

    2.centos 7中安装形式

    1.源码安装
    2. rpm包安装
    3.yum安装

    3.yum安装好处:

    1.不用编译源码
    2.不用解决软件的依赖关系(此处作为了解)
    如果我要知道我要安装什么软件,用yum可以很简单^

    我们要安装别人的软件:
    1.需要别人先把代码给我编译成为可执行程序
    2.需要有人将编好的软件,放在用户能下载的地方(官网,应用软件市场)

    Linux也是一样的!

    手机安装示例:

     yum安装示例:yum类似于手机上的应用市场APP,迅雷这些安装软件

    4.yum工具的常用选项

    install 表示安装软件包

    list 列出所有可供安装的软件包

    search 搜索包含指定关键字的软件包

    remove 卸载指定的软件包

    (1)yum list | grep sl        

    yum list:把yum包含的软件包都列出来。

    yum list | grep sl :把yum包含的软件包中还有sl的软件包都列出来。

    1. [zsh@ecs-78471 lesson6]$ yum list | grep sl
    2. cyrus-sasl-lib.x86_64 2.1.26-23.el7 @anaconda
    3. openssl.x86_64 1:1.0.2k-24.el7_9 @updates
    4. openssl-libs.x86_64 1:1.0.2k-24.el7_9 @updates
    5. python-slip.noarch 0.4.0-4.el7 @anaconda
    6. python-slip-dbus.noarch 0.4.0-4.el7 @anaconda
    7. rsyslog.x86_64 8.24.0-57.el7_9.1 @updates
    8. slang.x86_64 2.2.4-11.el7 @anaconda
    9. NetworkManager-adsl.x86_64 1:1.18.8-2.el7_9 updates
    10. NetworkManager-fortisslvpn.x86_64 1.2.8-7.el7 epel
    11. NetworkManager-fortisslvpn-gnome.x86_64 1.2.8-7.el7 epel
    12. aisleriot.x86_64 1:3.22.2-1.el7 epel
    13. anope-openssl.x86_64 2.0.10-1.el7 epel
    14. apr-util-openssl.x86_64 1.5.2-6.el7 base
    15. autocorr-sl.noarch 1:5.3.6.1-25.el7_9 updates
    16. batik-slideshow.noarch 1.8-0.12.svn1230816.el7 base
    17. bitten-slave.noarch 1:0.6-3.el7 epel
    18. cgnslib.x86_64 3.2.1-4.el7 epel
    19. cgnslib-devel.x86_64 3.2.1-4.el7 epel
    20. cinnamon-translations.noarch 3.6.2-2.el7 epel
    21. csslint.noarch 0.10.0-2.el7 epel
    22. cyrus-sasl.i686 2.1.26-24.el7_9 updates
    23. cyrus-sasl.x86_64 2.1.26-24.el7_9 updates
    24. cyrus-sasl-devel.i686 2.1.26-24.el7_9 updates
    25. cyrus-sasl-devel.x86_64 2.1.26-24.el7_9 updates
    26. cyrus-sasl-gs2.i686 2.1.26-24.el7_9 updates
    27. ………………

    软件包信息介绍:

    lrzsz.x86_64         0.12.20-36.el7         @base
    lrzsz软件包名称        x86:适用的平台        _64:64位         "el7" 表示的是 centos7
    base 表示的是 "软件源" 的名称
    注意事项:
    软件包名称: 主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构.
    "x86_64" 后缀表示64位系统的安装包, "i686" 后缀表示32位系统安装包. 选择包时要和系统匹配.
    "el7" 表示操作系统发行版的版本. "el7" 表示的是 centos7/redhat7. "el6" 表示 centos6/redhat6.
    最后一列, base 表示的是 "软件源" 的名称, 类似于 "小米应用商店", "华为应用商店" 这样的概念

    (2)sudo yum install sl ——安装软件

    或sudo yum install sl.x86_64 ——安装sl

    需要安装的几个软件:

    ①sudo yum install sl

    ②sudo yum install -y lrzsz

    ③sudo yum install -y epel-release(准官方服务器列表)

    sudo yum install -y vim

    (3)sudo yum remove sl ——卸载软件

    sudo yum remove sl ——卸载sl这个软件

    5.yum相关命令

    yum makecache命令的功能是将服务器的软件包信息缓存到本地(yum工具在每次安装指定软件包的时候,都会检测源服务器上的软件包信息,为了便捷不用每次都去搜索软件包信息,因此使用 yum makecache将软件包信息缓存到本地,使用 yum clean all 清理老旧的缓存信息。)

    yum search命令可以在所有软件包中搜索包含有指定关键字的软件包

    yum clean all 命令可以清除缓存中老旧的头文件和软件包

    yum -y update:升级所有包同时,也升级软件和系统内核;

    yum -y upgrade:只升级所有包,不升级软件和系统内核,软件和内核保持原样。 

    二.Linux编辑器-vim

    1.vim是什么?

    是一个编辑器

    (1)只能用来写代码
    (2)功能强大的多模式的编辑器

    2.为什么要学vim?

    有时候,需要我们在生成环境下,需要你快速的定位问题,甚至需要你快速的修改代码!

    3.vim的三种模式

    (其实有好多模式,目前掌握这3种即可)
    命令模式(command mode(或 正常/普通/默认模式)
            功能:控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode
    插 入模式(Insert mode)
            只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁 的编辑模式。
    底行模式(last line mode)(或末行模式)
            文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入(退出shift+: q,保存并退出shift+: wq)

    (1)底行模式下的操作

    在末行模式下,键入:wq 保存并退出编辑,就算没有修改也会写入,并修改文件时间属性

    在末行模式下,键入:q! 强制退出编辑,但并不保存当前修改

     在末行模式下,键入:x! 保存并退出编辑,仅当文件有修改时会保存,并修改文件时间属性

    在编辑模式下,键入”ESC”键并非直接退出vi编辑,而是用于返回普通模式

    (2)三种模式转换关系

    命令模式——>插入模式
    i:直接进入插入模式
    a:从下一个字符进入插入模式
    o:从下一行进入插入模式

    温馨提示:任何模式想回到命令模式无脑esc

    4.命令模式下的文本批量化操作:

    yy:                         复制当前行,nyy——复制包括光标所在行的下面n行内容       

    p:                        粘贴到当前行的后面,np——粘贴n次已复制的内容                         

    dd:                        剪切(删除)当前行,ndd——剪切包括光标所在行的下面n行内容
    u:                        撤销刚刚的操作(相当于vs下的ctrl+z)
    ctrl+r:                        针对u操作,再次进行撤销(相当于vs下的ctrl+y)
    shift+g:(就是G)            光标快速定位到文本末尾
    gg:                                快速的将光标定位到文本的最开始
    n+shift+g:                  光标快速定位到文本的第n行
    shift+4:(4就是$)           光标快速定位到文本行的末尾
    shift+6: (^)               光标快速 定位到文本行的开始          $^:通常叫锚点
    w,b:                        向后(w),向前(b)在一行以单词为单位进行光标移动
    h,j,k,l:                          h左,j下,k上,l右(光标的移动上下左右移动)
    shift + ~ (esc下面) :        ~ 大小写快速切换
    r+输入字符:                 替换光标所在的字符为输入字符, 支持nr——(把包括光标在内的后n个字符替换为n个相同字符)
    shift+r:(R)                   批量化替换(写一个就覆盖一个原有内容)
    x:                                删除光标所在的字符,nx——删除包括光标在内的后n个字符

    s+AAA+yyy+g                vim编辑器中,将字符AAA全部替换成yyy(g比较常用,通常使用g表示全部替换,默认如果不给的话,表示只替换一次)

    结论:vim更适合处理大型项目或者文件。

    5.整个代码编译的流程

    vim编辑文件,cat读文件,gcc mytest.c 编译文件,生成a.out文件,./a.out执行文件即可。

  • 相关阅读:
    从零开始操作系统-08:计时器
    2022-11-28 Volta | yarn global 安装失败 | Usage Error: No project found
    使用python实现短线选股
    Activiti第二部分
    【ContextCapture建模精品教程】三维实景模型生成集群设置(2)——工程文件网络路径设置
    linux驱动34:tasklet小任务机制
    K8S:K8S自动化运维容器Docker集群
    开源OLAP数据库ClickHouse获2.5亿美元B轮融资
    【Qt-17】Qt调用matlab生成的dll库
    7个实用的Python自动化测试框架
  • 原文地址:https://blog.csdn.net/zhang_si_hang/article/details/125909742