【Linux工具】yum软件包管理器与Vim编辑器的高效运用

目录

[Linux 软件包管理器 YUM](#Linux 软件包管理器 YUM)

什么是软件包

[安装工具 rzsz 及注意事项](#安装工具 rzsz 及注意事项)

查看软件包

安装和卸载软件

安装软件

卸载软件

[Linux 开发工具](#Linux 开发工具)

[编辑器 - Vim 使用](#编辑器 - Vim 使用)

​编辑

[Vim 与 Vi 的区别](#Vim 与 Vi 的区别)

[Vim 的基本概念](#Vim 的基本概念)

三种模式

[Vim 的基本操作](#Vim 的基本操作)

操作尝试:

[Vim 命令集解释](#Vim 命令集解释)

插入模式

[移动光标 (文本gg& (n)G ,行 \& \^ , 字符hjkl)](#移动光标 (文本gg& (n)G ,行 & ^ , 字符hjkl))

[删除(x & dd)](#删除(x & dd))

复制与粘贴(yy&p)

​编辑

[修改和替换(shift~ & r & nr)](#修改和替换(shift~ & r & nr))

[Vim 末行模式命令集](#Vim 末行模式命令集)

[Vim 操作总结](#Vim 操作总结)

[vim 常用配置:](#vim 常用配置:)

懒人一键配置

sum


文章手稿见文末~

Linux 软件包管理器 YUM

什么是软件包

在 Linux 下安装软件,通常的方法是下载程序的源代码并进行编译,得到可执行程序。然而,这样太麻烦了,于是有人将一些常用的软件提前编译好,做成软件包(类似于 Windows 上的安装程序),放在一个服务器上。通过包管理器,可以方便地获取并安装这些软件包。

  • 软件包和软件包管理器的关系:就像 "App" 和 "应用商店"。
  • YUM (Yellow dog Updater, Modified) 是 Linux 下非常常用的一种包管理器,主要用于 Fedora、RedHat、CentOS 等发行版。
  • Centos 7Centos 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 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 的区别
  • VimVi 的升级版本,兼容 Vi 的所有指令并添加了新特性。
  • 可以在终端、X Window、Mac OS、Windows 下运行。

Vim 的基本概念

三种模式
模式名称 Description
命令模式 控制光标移动,删除、复制、进入插入模式或底行模式
插入模式 输入文字,按 ESC 返回命令模式
底行模式 保存、退出、替换、查找、显示行号等操作

可以借助下面的图解,对模式的切换进行记忆~

查看所有模式

复制代码
:help vim-modes
Vim 的基本操作
  • 进入 Vim

    复制代码
    vim [文件名]
  • 切换模式

操作 说明
正常模式 -> 插入模式 aio
插入模式 -> 正常模式 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 屏幕往"前"移动半页

关于 hjkl记忆小技巧

删除(x & dd)
命令 说明
#x 删除光标所在位置的"后面"#个字符
#dd 从光标所在行开始删除#行
复制与粘贴(yy&p)
命令 说明
#yy 复制光标所在行及之后的#行
p 将缓冲区内的字符粘贴到光标所在位置,和dd实现剪切复制

| ##### 修改和替换(shift~ & r & nr) |------------|-------------------| | 指令 | 操作 | | shift + ~ | 大小写快速切换 | | r | 替换光标所在位置的字符 | | [n] r | 替换光标所在位置开始的 n 个字符 | |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| |

撤销(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

相关推荐
爱学习的阿磊4 分钟前
自定义操作符重载指南
开发语言·c++·算法
悠哉悠哉愿意5 分钟前
【物联网学习笔记】时钟树
笔记·单片机·嵌入式硬件·物联网·学习
fenglllle11 分钟前
使用fyne做一个桌面ipv4网段计算程序
开发语言·go
AI视觉网奇23 分钟前
ue 获取动画参数数据
笔记·学习·ue5
上海合宙LuatOS24 分钟前
LuatOS框架的使用(2)
java·服务器·开发语言·前端·数据库·嵌入式硬件·php
一起养小猫25 分钟前
Flutter for OpenHarmony 实战 文件存储与数据库操作完全指南
开发语言·jvm·数据库·spring·flutter·harmonyos
云游云记28 分钟前
php Composer 使用全攻略
开发语言·php·composer
橙露29 分钟前
数据库运维核心:MySQL主从复制与读写分离的部署与维护
运维·数据库·mysql
珊瑚怪人29 分钟前
Microsoft Visual Studio2022下载安装详细教程
ide·microsoft·c#·编辑器·visual studio·cpp
Wpa.wk35 分钟前
Docker- 故障注入(混沌工程)测试(简单过程阐述)
linux·运维·分布式·测试工具·docker·容器