【Linux工具】yum软件包管理器与Vim编辑器的高效运用
目录
Linux 软件包管理器 YUM
什么是软件包
安装工具 rzsz 及注意事项
查看软件包
安装和卸载软件
安装软件
卸载软件
Linux 开发工具
编辑器 - Vim 使用
编辑
Vim 与 Vi 的区别
Vim 的基本概念
三种模式
Vim 的基本操作
操作尝试:
Vim 命令集解释
插入模式
移动光标 (文本gg& (n)G ,行 $ & ^ , 字符hjkl)
删除(x & dd)
复制与粘贴(yy&p)
编辑
修改和替换(shift~ & r & nr)
Vim 末行模式命令集
Vim 操作总结
vim 常用配置:
懒人一键配置
sum
文章手稿见文末~
Linux 软件包管理器 YUM
什么是软件包
在 Linux 下安装软件,通常的方法是下载程序的源代码并进行编译,得到可执行程序。然而,这样太麻烦了,于是有人将一些常用的软件提前编译好,做成软件包(类似于 Windows 上的安装程序),放在一个服务器上。通过包管理器,可以方便地获取并安装这些软件包。
- 软件包和软件包管理器的关系:就像 “App” 和 “应用商店”。
- YUM (Yellow dog Updater, Modified) 是 Linux 下非常常用的一种包管理器,主要用于 Fedora、RedHat、CentOS 等发行版。
- Centos 7 中安装软件分为三种方式: ① 源码安装 ② rpm 包安装 ③ yum 安装
yum 安装的好处显而易见,不用编译源码,且不用解决软件的依赖关系。
接下来可以试着来安装一款软件
# yum install sl
安装完成后输入,就可以看见一个小火车啦~
Linux 下我们可以通过 yum list 指令去执行类似于手机应用市场的 "软件推荐" 功能:
tip:
不是国内的,或者发现安装软件特别慢,建议大家更新一下 yum 源。
🔍 百度搜索:Centos7 如何设置国内 yum 源。
安装工具 rzsz 及注意事项
该工具用于 Windows 机器和远端的 Linux 机器通过 XShell 传输文件,安装后可以拖拽文件进行上传。
-
安装命令:
sudo yum install rzsz
-
注意事项:
- YUM 的所有操作必须保证主机(虚拟机)网络畅通,可以通过
ping
指令验证,如ping www.baidu.com
。
- YUM 的所有操作必须保证主机(虚拟机)网络畅通,可以通过
查看软件包
通过 yum list
命令可以罗列出当前有哪些软件包。由于包的数目可能非常多,我们可以使用 grep
命令筛选出所关注的包。例如:
yum list | grep lrzsz
结果示例:
包名 | 版本 | 源 |
---|---|---|
lrzsz.x86_64 | 0.12.20-36.el7 | @base |
注意事项:
- 软件包名称结构:
- 前缀:如
x86_64
表示 64 位系统安装包,i686
表示 32 位系统安装包。 - 版本号:如
el7
表示 CentOS 7/RedHat 7,el6
表示 CentOS 6/RedHat 6。 - 来源:如
base
表示软件源的名称。
- 前缀:如
安装和卸载软件
安装软件
sudo yum install [软件包名称]
YUM 会自动找到软件包并下载。输入
y
确认安装,出现 “complete” 字样表示安装完成。注意事项:
- 安装软件需写入系统目录,通常需要
sudo
或切换到 root 用户。- YUM 安装软件只能一个接一个安装,不能并行。
卸载软件
sudo yum remove [软件包名称]
Linux 开发工具
编辑器 - Vim 使用
安装一下
# yum install -y vim
Vim 与 Vi 的区别
- Vim 是 Vi 的升级版本,兼容 Vi 的所有指令并添加了新特性。
- 可以在终端、X Window、Mac OS、Windows 下运行。
Vim 的基本概念
三种模式
模式名称 | Description |
---|---|
命令模式 | 控制光标移动,删除、复制、进入插入模式或底行模式 |
插入模式 | 输入文字,按 ESC 返回命令模式 |
底行模式 | 保存、退出、替换、查找、显示行号等操作 |
可以借助下面的图解,对模式的切换进行记忆~
查看所有模式:
:help vim-modes
Vim 的基本操作
-
进入 Vim:
vim [文件名]
-
切换模式:
操作 | 说明 |
---|---|
正常模式 -> 插入模式 | a 、i 、o |
插入模式 -> 正常模式 | ESC |
正常模式 -> 底行模式 | : |
- 保存与退出:
命令 | 说明 |
---|---|
:w | 保存当前文件 |
:wq | 保存并退出 |
:q! | 不保存强制退出 |
操作尝试:
最简单的命令行输入步骤
Vim 命令集解释
sum:
插入模式
命令 | 说明 |
---|---|
i | 从光标当前位置开始插入 |
a | 从光标位置的下一个位置开始插入 |
o | 在光标位置的下一行插入新行 |
ESC | 从插入模式返回正常模式 |
移动光标 (文本gg& (n)G ,行 $ & ^ , 字符hjkl)
命令 | 说明 |
---|---|
h / j / k / l | 左 / 下 / 上 / 右移一格 |
G | 移动到文件最后 |
$ | 移动到行尾 |
^ | 移动到行首 |
w | 光标跳到下一个词的开头 |
e | 光标跳到下一个词的词尾 |
b | 光标回到前一个词的开头 |
#l | 光标移到该行的第#个位置 |
gg | 移动到文件开始 |
Shift + G | 移动到文件末端 |
Ctrl + b | 屏幕往“后”移动一页 |
Ctrl + f | 屏幕往“前”移动一页 |
Ctrl + u | 屏幕往“后”移动半页 |
Ctrl + d | 屏幕往“前”移动半页 |
删除(x & dd)
命令 | 说明 |
---|---|
#x | 删除光标所在位置的“后面”#个字符 |
#dd | 从光标所在行开始删除#行 |
复制与粘贴(yy&p)
命令 | 说明 |
---|---|
#yy | 复制光标所在行及之后的#行 |
p | 将缓冲区内的字符粘贴到光标所在位置,和dd实现剪切复制 |
修改和替换(shift~ & r & nr)
| ||||||||
---|---|---|---|---|---|---|---|---|
撤销(u&ctrl+r)
命令 | 说明 |
---|---|
u | 撤销上一次操作 |
Ctrl + r | 撤销的恢复 |
Vim 末行模式命令集
- 列出行号:
set nu
- 跳到文件中的某一行:在冒号后输入行号,如
:15
跳到第 15 行。 - 查找字符:
命令 | 说明 |
---|---|
/关键字 | 从当前光标位置向后查找关键字 |
?关键字 | 从当前光标位置向前查找关键字 |
n | 查找下一个匹配结果 |
- 保存文件与退出:
命令 | 说明 |
---|---|
:w | 保存当前文件 |
:q! | 不保存强制退出 |
:wq | 保存并退出 |
Vim 操作总结
- 三种模式:正常模式、插入模式、底行模式。
- 配置文件:
- 系统级配置文件:
/etc/vimrc
- 用户级配置文件:
~/.vimrc
- 系统级配置文件:
vim 常用配置:
syntax on # 设置语法高亮
set nu # 显示行号
set shiftwidth=4 # 设置缩进的空格数为4
懒人一键配置
直接无脑复制下面的文字,shift+insert 粘贴到命令行:
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh &&bash ./install.sh
回车就可以安装好一个简易的环境啦~
sum
相关文章:

【Linux工具】yum软件包管理器与Vim编辑器的高效运用
目录 Linux 软件包管理器 YUM 什么是软件包 安装工具 rzsz 及注意事项 查看软件包 安装和卸载软件 安装软件 卸载软件 Linux 开发工具 编辑器 - Vim 使用 编辑 Vim 与 Vi 的区别 Vim 的基本概念 三种模式 Vim 的基本操作 操作尝试: Vim 命令集解释…...

Matlab数学建模实战应用:案例4 - 图像处理
目录 前言 一、图像处理基础 二、Matlab图像处理工具箱 三、案例:图像锐化、去噪和分割 步骤 1:读取和显示图像 步骤 2:图像锐化 步骤 3:图像去噪 步骤 4:图像分割 完整代码示例 四、实际应用 实例总结 总…...

Studying-代码随想录训练营day15| 222.完全二叉树的节点个数、110.平衡二叉树、257.二叉树的所有路径、404.左叶子之和
第十五天,二叉树part03💪,编程语言:C 目录 257.完全二叉树的节点个数 110.平衡二叉树 257.二叉树的所有路径 404.左叶子之和 总结 257.完全二叉树的节点个数 文档讲解:代码随想录完全二叉树的节点个数 视频讲解…...

Python 基础:异常
目录 一、异常概念二、处理异常2.1 抛出异常2.2 使用 try-except 代码块2.3 使用 try-except-else 代码块2.4 静默失败 三、总结 遇到看不明白的地方,欢迎在评论中留言呐,一起讨论,一起进步! 本文参考:《Python编程&a…...
XML 应用程序
XML 应用程序 XML(可扩展标记语言)是一种用于存储和传输数据的标记语言。它是一种自我描述的语言,允许用户定义自己的标签和文档结构。XML广泛应用于各种应用程序中,包括网站开发、数据交换、文档管理等。本文将探讨XML的一些主要…...

SprringCloud Gateway动态添加路由不重启
文章目录 前言:一、动态路由必要性二、SpringCloud Gateway路由加载过程RouteDefinitionLocator接口PropertiesRouteDefinitionLocator类DiscoveryClientRouteDefinitionLocatorInMemoryRouteDefinitionRepositoryCompositeRouteDefinitionLocator类CachingRouteDef…...

Windows安装mysql
首先去官网下载社区版本的mysql(如果连不上,挂梯子) https://www.mysql.com/downloads/ 2. 去配置环境变量path 3. 在cmd里面初始化数据库(在搜索框输入cmd,或者在资源管理器下搜索烂输入cmd回车就行) my…...

chatgpt: linux 下用纯c 编写ui
在Linux下用纯C语言编写用户界面(UI),通常会使用GTK或Xlib。GTK是一个更高级的库,提供了丰富的控件和功能,而Xlib则是一个更底层的库,提供了直接操作X Window系统的功能。 下面是一个使用GTK在Linux上创建…...
Java十六进制Dump打印数据
代码 package test;import java.io.IOException;import sun.misc.HexDumpEncoder;@SuppressWarnings("restriction")...

某棋牌渗透测试
前言 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。 一、信息收集 这里通过fofa进行收集,语法为:body某棋牌 && titlexxx 图1-1 fofa资产收集 …...

JAVA面试(六)
缓存 MemcachedredisRedis常见数据类型和使用Redis缓存持久化RDB-快照AOF-追加文件 Redis数据过期机制惰性删除定期删除Redis缓存淘汰策略(8种)算法LRU (Least Recently Used):最近最少使用LFU(Least Frequ…...

【C语言】手写学生管理系统丨附源码+教程
最近感觉大家好多在忙C语言课设~ 我来贡献一下,如果对你有帮助的话谢谢大家的点赞收藏喔! 1. 项目分析 小白的神级项目,99%的程序员,都做过这个项目! 掌握这个项目,就基本掌握 C 语言了! 跳…...

流媒体传输协议HTTP-FLV、WebSocket-FLV、HTTP-TS 和 WebSocket-TS的详细介绍、应用场景及对比
一、前言 HTTP-FLV、WS-FLV、HTTP-TS 和 WS-TS 是针对 FLV 和 TS 格式视频流的不同传输方式。它们通过不同的协议实现视频流的传输,以满足不同的应用场景和需求。接下来我们对这些流媒体传输协议进行剖析。 二、传输协议 1、HTTP-FLV 介绍:基于 HTTP…...

【机器学习】线性回归:从基础到实践的深度解析
🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 💫个人格言: "如无必要,勿增实体" 文章目录 线性回归:从基础到实践的深度解析引言一、线性回归基础1.1 定义与目…...

短视频开源项目MoneyPrinterTurbo:AI副业搞起来,视频制作更轻松!
目录 引言一、MoneyPrinterTurbo简介二、MoneyPrinterTurbo的核心功能三、MoneyPrinterTurbo的未来发展四、MoneyPrinterTurbo与AI副业五、部署实践1、克隆代码2、创建虚拟环境3、安装依赖4、安装好 ImageMagick5、端口映射6、启动Web界面7、模型配置8、填写主题9、视频生成10、…...

【JAVA】SpringBoot + skywalking 将接口的入参、出参、异常等信息上报到skywalking 链路追踪服务器上
【JAVA】SpringBoot skywalking 将接口的入参、出参、异常等信息上报到skywalking 链路追踪服务器上 1.下载SkyWalking APM https://skywalking.apache.org/downloads/ jdk8 不支持 SkyWalking APM 9.3.0以上版本,所以这里我们下载 9.3.0版本 2.下载 Java Agent …...
[xmake]构建静态库和动态库
xmake 静态库和动态库 在xmake中创建静态库和动态库的方法非常相似。以下是创建静态库和动态库的基本步骤: 创建xmake工程文件(xmake.lua)。 配置工程属性,包括工程名、版本等。 添加源代码文件到工程中。 设置是创建静态库还…...

功能测试 之 单模块测试----轮播图、登录、注册
单功能怎么测? 需求分析 拆解测试点 编写用例 1.轮播图 (1)需求分析 位置:后台--页面--广告管理---广告列表(搜索index页面增加广告位2) 操作完成后需要点击admin---更新缓存,前台页面刷新生效 (2)拆解…...
MyBatis-PageHelper 源码解说
归档 GitHub: MyBatis-PageHelper-源码解说 总说明 源码仓库: https://github.com/pagehelper/Mybatis-PageHelper克隆:git clone https://github.com/pagehelper/Mybatis-PageHelper.git切分支(tag):git checkout m…...

基于uni-app和图鸟UI的智慧校园圈子小程序开发实践
摘要: 随着教育信息化和“互联网教育”的快速发展,智慧校园建设已成为推动校园管理现代化、提高教育教学质量的重要手段。本文介绍了基于uni-app和图鸟UI开发的智慧校园圈子小程序,旨在通过一站式服务、个性化定制、数据互通和安全可靠等特点…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...
spring:实例工厂方法获取bean
spring处理使用静态工厂方法获取bean实例,也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下: 定义实例工厂类(Java代码),定义实例工厂(xml),定义调用实例工厂ÿ…...

Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...
Android第十三次面试总结(四大 组件基础)
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...

push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...

RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)
RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发,后来由Pivotal Software Inc.(现为VMware子公司)接管。RabbitMQ 是一个开源的消息代理和队列服务器,用 Erlang 语言编写。广泛应用于各种分布…...
NPOI操作EXCEL文件 ——CAD C# 二次开发
缺点:dll.版本容易加载错误。CAD加载插件时,没有加载所有类库。插件运行过程中用到某个类库,会从CAD的安装目录找,找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库,就用插件程序加载进…...

Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement
Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement 1. LAB环境2. L2公告策略2.1 部署Death Star2.2 访问服务2.3 部署L2公告策略2.4 服务宣告 3. 可视化 ARP 流量3.1 部署新服务3.2 准备可视化3.3 再次请求 4. 自动IPAM4.1 IPAM Pool4.2 …...