Linux 基础开发工具 —— 解锁高效开发的底层密钥

Linux 系统是开发领域的核心选择,而yum/apt、 gcc/g++、make、gdb、vim、git 等基础工具,是支撑代码编译、构建、调试、编辑与版本管控的核心骨架。它们看似基础,却直接决定开发效率与项目稳定性,是从入门到资深开发者都需熟练驾驭的必备技能。本文聚焦这些工具的核心用法与实战技巧,助力快速掌握 Linux 开发核心能力。

一yum/apt

yum 是基于 RPM 包管理体系的工具,主要适配 RedHat 系发行版(如 CentOS、RHEL、Fedora),通过配置软件源(repo)自动解析依赖关系,一键完成软件安装 / 升级,常用命令如 yum installyum updateyum remove

apt 则是 Debian 系发行版(如 Ubuntu、Debian)的标配,基于 DEB 包体系,依托 /etc/apt/sources.list 配置软件源,命令简洁且执行效率高,核心指令包括 apt installapt upgradeapt remove,后续还衍生出 apt-get 等更细分的工具。

1)Linux中安装软件的方法

我们的yum/apt使用的是包管理安装的方法。

2)Linux软件包生态

在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.

但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.软件包和软件包管理器, 就好比 "App" 和 "应用商店" 这样的关系.

yum/apt就相当于Linux上的应用商店。

上面的源代码编译安装就相当于下载到程序的源代码, 并进行编译, 得到可执行程序.而安装rmp包还要我们自己解决依赖问题,所有也不好用。

3)怎么评判一个系统的好坏

生态好的系统才叫好,简单来说就是用的人要多,这样的系统更新及时,社区活跃,会吸引更多的人来使用。生态好了自然有人愿意为系统开发软件。

这体现了Liunx开源的理念

下图是软件的生产过程。

怎么找到下载地址的?

很多目标服务器都在国外,因为墙的存在,所有下载速度很慢,所有就有了镜像源的出现。把国外的数据拷贝到国内来。

软件源又分成稳定的和扩展的,稳定软件源的软件都是经历了时间检验的,扩展的则是新出现的。

3)使用yum/apt

yum/apt可以用来查找,安装,卸载下载软件,解决软件依赖问题。

1.查找软件

yum list | grep "软件名称"

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

2.安装软件

sudo yum -y install "软件" -y表示不再询问

3.卸载软件

sudo yum remove "软件"

注意事项:
• 安装软件时由于需要向系统目录中写入内容, 一般需要 sudo 或者切到 root 账户下才能完成.
• yum/apt安装软件只能一个装完了再装另一个. 正在yum/apt安装一个软件的过程中, 如果再尝试用yum/apt安装另外一个软件, yum/apt会报错
.

4)安装源

扩展软件源需要自己安装。

软件源更新:用一个新的配置文件替换系统的配置文件。(云服务器不用管)

  1. 刷新软件源缓存 (最常用):执行 yum makecache,将软件源的包信息缓存到本地,加速后续安装 / 更新操作。
  2. 修改软件源配置 (更换国内源,如阿里云 / 清华源):
    • 备份原有配置:mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
    • 下载对应版本的国内源配置文件(如 CentOS 7):wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
    • 刷新缓存:yum makecache
  3. 更新系统已安装包 (基于当前软件源):yum update(更新所有包)/ yum update 软件名(更新指定包)。

二vim编辑器

vim是vi的升级版本,只能用来写代码和更改配置文件。

1)vim的基本概念

1.模式

• 正常/普通/命令模式(Normal mode)

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last

line mode
• 插入模式(Insert mode)

只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
• 末行模式(last line mode)

文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。

在命令模式下,*shift+:* 即可进入该模式。

要查看你的所有模式:打开 vim,底行模式直接输入

:help vim-modes

模式切换:

• [正常模式]切换至[插入模式]
• 按「i」切换进入插入模式「insert mode」,按"i"进入插入模式后是从光标当前位置开始输入
文件;
• 按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
• 按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
• [插入模式]切换至[正常模式]
• 目前处于[插入模式],就只能一直输入文字,如果发现输错了字,想用光标键往回移动,将该字删
除,可以先按一下「ESC」键转到[正常模式]再删除文字。当然,也可以直接删除。
• [正常模式]切换至[末行模式]
• 「shift + ;」, 其实就是输入「:」
• 退出vim及保存文件,在[正常模式]下,按一下「:」冒号键进入「Last line mode」,例如:
• : w (保存当前文件)
• : wq (输入「wq」,存盘并退出vim)
• : q! (输入q!,不存盘强制退出vim)

2.vim的基本操作

打开文件:

bash 复制代码
$ vim test.c

vim一共有12种模式,其他的了解一下就行。

3.配置vim

上网搜一个一键配置。推荐:

thttps://gitee.com/HGtz2222/VimForCppvimforcpp/VimForCpp

相关推荐
lengjingzju4 分钟前
一网打尽Linux IPC(一):进程间通信完全指南——总体介绍
linux·服务器·c语言
阿豪学编程17 分钟前
【Linux】进程信号深度解析
linux·运维·服务器
10000hours42 分钟前
【Vim】vim常用命令:查找&编辑&可视区块
linux·编辑器·vim
chenyuhao20241 小时前
Linux网络编程:HTTP协议
linux·服务器·网络·c++·后端·http·https
广东大榕树信息科技有限公司1 小时前
动环监控如何有效提升机房环境管理的可靠性与响应速度?
运维·网络·物联网·国产动环监控系统·动环监控系统
txzz88881 小时前
CentOS-Stream-10 搭建NTP服务器(一)
linux·服务器·centos·ntp服务
冉佳驹2 小时前
Linux ——— 虚拟地址、页表、物理地址与 waitpid 和进程管理中的核心概念和技术
linux·waitpid·进程程序替换·exit·地址空间·非阻塞轮询·exec系列
先跑起来再说2 小时前
Go 语言的 Mutex 底层实现详解:状态位、CAS、自旋、饥饿模式与信号量
服务器·后端·golang
最后一个bug3 小时前
CPU的MMU中有TLB还需要TTW的快速查找~
linux·服务器·系统架构
zdd567893 小时前
行存表与列存表简述
运维·postgresql