一文带你读懂Linux下的开发工具

系列文章目录
1.Linux下的常见命令和你所需要知道的小知识
2.Linux下的文件和权限
本文文章目录
前言
在Linux开发环境中,熟练使用核心开发工具是每位开发者必备的基本技能。这些工具构成了Linux软件开发的基础设施,深刻理解它们能极大提升开发效率和质量。常见的工具有vim,安装工具则有yum和apt。
一、什么是软件包?
一个好的操作系统需要强力的系统稳定和丰富的生态,而Linux则拥有丰富的生态.
1.1 我们将介绍软件包:
你可以把软件包想象成一个精心打包的“盒子”:
- 内容全面:里面不仅包含可以直接运行的软件主程序,还有程序运行所需的库文件、默认的配置文件、说明文档等一切必要的东西。
- 分类清晰:软件包主要分为应用软件包(如办公软件、浏览器)和系统软件包(如驱动程序、系统工具)。此外,还可以分为需要用户自行编译的源代码包和已编译好可直接安装运行的二进制包。
1.2 那什么是apt呢?
- APT(Advanced Packaging Tool)是 Debian、Ubuntu 及其衍生 Linux 发行版中核心的命令行包管理工具,用于高效地管理软件包。它能自动处理软件包的下载、配置、安装、升级和删除,并智能解决复杂的依赖关系。
我们在使用apt的过程就类似与使用手机端的应用商店,他的工作原理如下:APT 采用 客户端-服务器 架构工作:
- 服务器端:软件源(Repository)存储着大量的软件包以及一个记录所有包信息的索引清单。
- 客户端:你的电脑。当执行 apt update时,系统会从服务器获取最新的索引清单到本地。当你执行 apt install时,APT 会根据这个本地清单检查依赖关系,然后自动从服务器下载所有必要的软件包并进行安装。
这样我们极大的方便了我们使用和利用Linux丰富的资源,开发效率大大提高。
1.3 apt常见的命令:
| 功能类别 | 命令示例 | 作用说明 |
|---|---|---|
| 更新软件源 | sudo apt update | 从配置的服务器同步最新的软件包列表信息,这是安装或升级前建议先执行的命令 。 |
| 安装软件 | sudo apt install <软件包名> | 安装指定软件包及其所有依赖项 。 |
| 升级软件 | sudo apt upgrade | 升级所有已安装的、有可用更新的软件包 。 |
| 卸载软件 | sudo apt remove <软件包名>sudo apt purge <软件包名> | remove删除软件包但保留配置文件;purge会彻底删除软件包及其配置文件。 |
| 搜索查询 | apt search <关键词>apt show <软件包名> | 根据关键词搜索软件包;显示某个软件包的详细信息 。 |
| 清理系统 | sudo apt autoremove | 自动删除那些为满足依赖而自动安装、但现在不再需要的“孤儿”软件包 。 |
二. vim工具的使用(重点)
Vim(Vi IMproved)是一款功能强大、高度可定制的文本编辑器,在程序员和系统管理员中非常受欢迎。它设计精巧,尤其擅长通过键盘命令进行高效文本操作。
我们来尝试打开vim。如果没有安装,可以使用apt的命令来安装vim。
我们输入:
vim --version 便可以看到vim的版本:

2.1 vim的命令模式:
我们创建一个文件,并使用vim打开他,命令如下:
wwh@iZbp1d5rltw6ubizz031qiZ:~/classBox/lesson2$ touch code.cpp wwh@iZbp1d5rltw6ubizz031qiZ:~/classBox/lesson2$ ll total 8 drwxrwxr-x 2 wwh wwh 4096 Oct 1619:44 ./ drwxrwxr-x 4 wwh wwh 4096 Oct 1619:44 ../ -rw-rw-r-- 1 wwh wwh 0 Oct 1619:44 code.cpp wwh@iZbp1d5rltw6ubizz031qiZ:~/classBox/lesson2$ wwh@iZbp1d5rltw6ubizz031qiZ:~/classBox/lesson2$ vim code.cpp 页面如下:

这个页面底下写着normal,就是命令模式,我们发现我们无法再里面写入任何模式,但是可以使用各种指令,我先插入一段代码,后面会和大家将如何插入。代码如下:

- 首先介绍移动光标:
- 我们还可以使用gg来回到开头,
shift + g(就是大写G)来完成快速移动到结尾。 - 一行之类的移动就可以使用
shift+4($)来完成移动到末尾,shift+6(^)来移动到开头。 - 按住w则可以跳过一个字
- 我们还可以使用gg来回到开头,
我们可以使用hjkl这四个按键来完成。其中h是左移,L是右移,j是下移,k是上移。如下图所示:

我在这里只讲了几个比较重要的,下面一表总结:
| 移动类型 | 常用命令 | 功能说明 |
|---|---|---|
| 基本移动 | h``j``k``l | 左、下、上、右移动光标 |
| 行内移动 | 0 | 移动到行首 |
^ | 移动到当前行第一个非空白字符 | |
$ | 移动到行尾 | |
f/F+字符 | 移动到当前行下一个(f)/上一个(F)的指定字符处 | |
w/ b/ e | 移动到下个/上个单词的开头/当前单词的结尾 | |
| 跨行移动 | gg | 移动到文件第一行 |
G | 移动到文件最后一行 | |
数字+G | 移动到指定行(如 50G跳到第50行) | |
Ctrl + f/ Ctrl + b | 向下/向上翻页 | |
Ctrl + d/ Ctrl + u | 向下/向上翻半页 | |
H/ M/ L | 移动到当前屏幕的顶/中/底部 | |
| 按内容移动 | /关键词 | 向下搜索关键词,按 n下一个,N上一个 |
?关键词 | 向上搜索关键词 | |
*/ # | 读取光标处的单词并向下/向上搜索 | |
% | 在配对的括号(如 (), [], {})间跳转 |
- 如何快速复制和删除:
- 按键
yy可以复制当强行 - 按键
yw可以复制光标到字尾的的字符 - 按键
num+yw可以对光标后num个字进行复制 - 按键
num+yy可以指定复制num行 - 按住
p可以完成复制 - 按住
dd可以进行删除 - 按
x每按一次,删除光标所在位置的一个字符. - 按
X每按一次,删除光标所在位置的 “ 前面 ” 一个字符. - 按
#dd:从光标所在行开始删除 # 行
- 按键
同时删除也可以搭配p来使用完成拷贝。所以我将两者一起将,同时基本命令也可以和数字建来他陪使用。我们来做出总结:
| 类别 | 常用命令 | 功能说明 |
|---|---|---|
| 移动光标 | hjkl | 左、下、上、右移动光标 |
0 | 移动到行首 | |
^ | 移动到行首第一个非空白字符 | |
$ | 移动到行尾 | |
w/ b | 移动到下一个/上一个单词的开头 | |
gg | 移动到文件第一行 | |
G | 移动到文件最后一行 | |
数字+G | 移动到指定行(如 50G跳到第50行) | |
| 删除命令 | x | 删除光标下的字符 |
X | 删除光标前的字符 | |
dd | 删除(剪切)整行 | |
数字+dd | 删除多行(如 3dd删除3行) | |
dw | 删除从光标位置到下一个单词开头的内容 | |
d$或 D | 删除从光标位置到行尾的内容 | |
d0 | 删除从光标位置到行首的内容 | |
| 复制命令 | yy | 复制当前行 |
数字+yy | 复制多行(如 3yy复制3行) | |
y$ | 复制从光标位置到行尾的内容 | |
y0 | 复制从光标位置到行首的内容 | |
yw | 复制从光标位置到下一个单词开头的内容 | |
| 粘贴命令 | p | 粘贴到光标后(下一行或下一个字符) |
P | 粘贴到光标前(上一行或前一个字符) | |
| 撤销/重做 | u | 撤销上一次操作 |
Ctrl + r | 重做(恢复撤销的操作) | |
| 替换操作 | r | 替换当前光标所在处的一个字符 |
R | 进入替换模式,连续替换多个字符,按 Esc退出 |
对于R模式的详细图片:

2.2插入模式
按住i键,既可以进入插入模式,我们便可以尝试写入各种代码,也是很简单的。我的上面代码就是这么写的。如图所示:

2.3 视图模式:
- 按 [ ctrl ] + [ v ] 即可从命令模式进入视图模式。
按 [ Esc ] 即可退出视图模式进入命令模式。

我们这个模式的主要作用就是批量化操作:

然后按住shift + i来完成进入插入模式。插入//,按住Esc键完成,达到以下效果:

完成注释。
2.4 底行模式
按住:进入,我们有:
| 功能类别 | 常用命令 | 说明与技巧 |
|---|---|---|
| 文件保存与退出 | :w | 保存文件。 |
:w! | 强制保存(常用于只读文件) 。 | |
:q | 退出 Vim。如果文件有未保存的修改,此操作会失败。 | |
:q! | 强制退出,不保存修改。这是放弃所有更改的常用方法 。 | |
:wq或 :x | 保存文件并退出 。 | |
| 行号与跳转 | :set nu或 :set number | 显示行号,方便定位代码 。 |
:set nonu或 :set nonumber | 取消显示行号 。 | |
:数字 | 跳转到指定行。例如,输入 :15后回车,光标会跳到第15行。 | |
| 查找与替换 | /关键词 | 从光标位置向下搜索指定关键词。按 n跳转到下一个匹配项,按 N跳转到上一个。 |
?关键词 | 从光标位置向上搜索 。 | |
:%s/旧内容/新内容/g | 全局替换。将文件中所有匹配的“旧内容”替换为“新内容” 。 | |
:n,ms/旧内容/新内容/g | 指定范围替换。替换第 n行到第 m行之间的所有匹配项。 | |
在命令后加 c | 替换前确认。例如 :%s/foo/bar/gc,每次替换前都会询问。 | |
| 其他实用命令 | :e! | 放弃所有未保存的修改,重新加载磁盘上的原始文件 。 |
:!命令 | 暂时执行 Shell 命令。例如,输入 :!ls可以查看当前目录下的文件,按回车后返回 Vim |
其实初学者只要记住wq和wq!几乎就可以了,大家不会的可以来看看。
总结
提示:这里对文章进行总结:
本文主要介绍了Linux下的vim操作指令。感谢大家的三连。
