linux环境开发工具---yum与vim

news2024/12/29 10:49:30

1.Linux软件包管理器yum

1.1什么是软件包

在学习linux过程中,我们常常会遇到某些指令用不了的时候,原因除了权限问题外,还有可能是你当前的linux环境并没有安装相应的软件包。而在Linux下载安装软件的办法有两个,一个是先下载所需软件的源代码然后编译,得到可执行程序之后再安装。这种方法无疑是繁琐且麻烦的,所以就有人把一些常用的软件提前编译好,做成软件包(可以理解为windows上的安装程序)并放在服务器上,通过包管理器可以很方便的获取到这个已经编译好的软件包,直接进行安装,这是另一种方法,也是我们常用的一种方法软件包就像是“APP",而软件包管理器就好像是”应用商店“。

yum(Yellow dog Updater, Modified)是Linux下非常常用的一种软件包管理器. 主要应用在Fedora, RedHat,Centos等发行版上.

1.2yum的软件获取源在哪?

其实yum安装软件的本质就是在其源配置文件中找到目标软件的链接(URL),再到这个链接中去下载所需软件。

 运行以下命令以查看系统中的Yum源配置文件(需要root)

cat /etc/yum.repos.d/*.repo

也可以直接进入/etc/yum.repos.d目录查看配置文件

/etc/yum.repos.d/*.repo表示的是/etc/yum.repos.d目录下的所有以.repo后缀结尾的文件内容,每一个文件都代表着一个yum源配置。从中我们可以看到每个yum源配置的详细信息,包括名称、URL、启用状态等。

1.3关于rzsz

szrz 是一对用于在linux系统中进行文件传输的命令行工具,。它们通常用于通过串口或SSH等连接在远程计算机上进行文件的上传(rz)和下载(sz)。

1.4安装rzsz

yum -y install lrzsz

从windows机器上传文件到linux机器中

考虑以下指令

rz 

 从linux远端服务武器下载文件到windows中

sz 某个文件

注意事项

由于yum的所有操作都需要联网,就跟我们手机下载软件一样需要保持网络流畅。

可以通过ping指令来检测网络是否流畅

ping www.baidu.com

其原理就是去访问某个 www.baidu.com,然后发送一个ICMP 请求并等待响应,如果得到的响应数据正常,说明网络是顺畅的。

1.5查看软件包

我们通过yum list命令可以罗列出当前本地一共有多少软件包,由于数量可能非常多,我们需要使用grep命令筛选出目标软件包。 

考虑以下指令

yum list | grep 某个软件包 

 如果对grep或者 | 指令有问题的同学可以去我上一篇博客里面去了解一下

Linux基本指令总结(二)-CSDN博客

那么查看到的这一行的信息的各个字段分别代表什么意思呢?

 

1.6如何用yum安装软件

yum remove 某个软件包

注意yum指令都需要root权限,如果是普通用户则需要使用sudo提权。

2.Linux编辑器-vim使用

vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于xshell、 window、mac os、windows。

2.1.vim的基本概念

Vim 是一款强大的文本编辑器,它基于 Vi(另一款流行的文本编辑器)并提供了许多增强的功能。以下是一些 Vim 的基本概念:

2.2.vim常见的三种模式

1、普通/命令/正常模式(Normal Mode):默认模式,用于控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode,在该模式下,按键执行命令而非输入文本在该模式下按 “i” 是切换到插入模式,按 “shift + ;” (等于按 “:”)切换到底行模式。

2、插入模式(Insert Mode):该模式用于输入编辑文本。按”Esc"键返回到命令模式。

3、末行模式(Last line Mode):又叫底行模式。该模式下可进行文件的保存或者退出,也可以进行文本替换、找字符串、列出行号等操作,按”Esc"键返回到命令模式。在该模式下输入help vim-modes可以查找所有的模式。

值得注意的是,要想进入其它模式只能在命令模式中切换,比如在插入模式无法直接切换到底行模式,只能先按Esc回到命令模式再按i进入插入模式。

在底行模式 输入help vim-modes

2.3进入vim

 使用以下命令使用vim编辑文件

vim + 某个文件

进入vim处于的是命令模式

2.4.vim的基本操作

2.4.1模式的切换:
序号命令所处模式含义
1a/i/o命令模式切换到插入模式
2按左上角的Esc键任何模式切换到命令模式
3“shift + ;”,等价于输入“:”命令模式切换到底行模式

2.4.2命令模式命令集

以下命令均在命令模式中执行

光标的移动:
命令含义
h、j、k、l对应光标的左上下右的移动
G(shift+g)移动到文章的最后
$移动到光标所在行的“行尾"
^移动到光标所在行的“行首"
w光标跳到下个字的开头
e光标跳到下个字的字尾
b光标回到上个字的开头
#l光标移到该行的第#个位置,如:5l,56
gg进入到文本开始
ctrl+b屏幕往“后”移动一页
ctrl+f屏幕往“前”移动一页
ctrl+u屏幕往“后”移动半页
ctrl+d屏幕往“前”移动半页
删除文字: 
命令含义
x每按一次,删除光标所在位置的一个字符
#x例如,「6x」表示删除光标所在位置的“后面(包含自己在内)”6个字符
X(shift+x)大写的X,每按一次,删除光标所在位置的“前面”一个字符
#X例如,「6X」表示删除光标所在位置的“前面(包含自己在内)”6个字符
dd删除光标所在行
#dd从光标所在行开始删除#行
复制:
命令含义
yw将光标所在之处到字尾的字符复制到缓冲区中
#yw复制#个字到缓冲区
yy复制光标所在行到缓冲区
#yy例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字
p将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。
 其它:
命令含义
r替换光标所在处的字符
R替换光标所到之处的字符,直到按下「ESC」键为止
u撤销,回到上一个操作
ctrl+r撤销的恢复
c#w更改光标所在处的字到字尾处
ctrl+g例如,「c3w」表示更改3个字
#G例如,「15G」,表示移动光标至文章的第15行行首
 2.4.3底行模式命令集

以下命令在底行模式进行

命令含义
set nu列出行号
#一个数字,跳转到#行
/关键字查找关键字,按n往后继续查找
?关键字查找关键字,按n往下一个关键字处查找
w保存文件
q退出
wq保存并退出
q!强制退出
wq!强制保存并退出
w!强制保存

2.5 vim配置

2.5.1配置文件的位置

在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。
而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc”。例如,/root目录下,
通常已经存在一个.vimrc文件,如果不存在,则创建之。
切换用户成为自己执行 su ,进入自己的主工作目录,执行 cd ~
打开自己目录下的.vimrc文件,执行 vim .vimrc

 可以看到,之所以我的vim看起来非常的”华丽“,是因为在vimrc里面已经配置好了各种命令。在我们打开vim时,会先读取vimrc里面的命令并生效,比如如果我们在里面配置了”set nu“显示行号的命令,在我们打开vim的时候就会自动显示行号了,非常方便。

配置选项比较多,大家可以去自行查阅。当然我们也可以使用插件。

2.5.2使用插件

1.安装TagList插件,下载taglist_xx.zip ,解压完成,将解压出来的doc的内容放到~/.vim/doc, 将解压出来的plugin下的内容拷贝到~/.vim/plugin
2.在~/.vimrc 中添加: let Tlist_Show_One_File=1 let Tlist_Exit_OnlyWindow=1 let Tlist_Use_Right_Window=1
3.安装文件浏览器和窗口管理器插件: WinManager
4.下载winmanager.zip,2.X版本以上的
5.解压winmanager.zip,将解压出来的doc的内容放到~/.vim/doc, 将解压出来的plugin下的内容拷贝到~/.vim/plugin
6.在~/.vimrc 中添加 let g:winManagerWindowLayout=‘FileExplorer|TagList nmap wm :WMToggle<cr>
7.然后重启vim,打开~/XXX.c或~/XXX.cpp, 在normal状态下输入"wm"

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1406222.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Unity之Timeline教程

前言 Unity Timeline是Unity的一种时间轴编辑器工具&#xff0c;用于制作和管理游戏中的动画、剧情以及事件触发。它提供了直观的界面&#xff0c;使得开发者可以通过拖放操作轻松创建和编辑时间轴。 Timeline的使用 创建新的Timeline 在Unity中&#xff0c;选择菜单栏的 Wi…

CACTER邮件安全网关独家安全解决方案——保障企业邮件系统安全

随着科技的不断发展&#xff0c;网络攻击技术也在不断演变&#xff0c;尤其是在电子邮件领域&#xff0c;各种高级变种威胁层出不穷&#xff0c;比如定制化的钓鱼邮件和带有高级恶意软件的邮件等。这些威胁邮件往往能够绕过传统的安全防护措施&#xff0c;包括反垃圾邮件、反钓…

【论文阅读 CIDR17】Self-Driving Database Management Systems

Self-Driving Database Management Systems MySummary ABSTRACT 之前的advisory tools来帮助DBA处理系统调优和物理设计的各个方面&#xff0c;都仍然需要人类对数据库的任何更改做出最终决定&#xff0c;并且是在问题发生后修复问题的反动措施reactionary measures 。 An …

MySQL 的delete、truncate、drop 有什么区别

目录 一、从执行速度上来说 二、从使用场景和原理上讲 1、DELETE 2、truncate 3、drop 希望能够帮助到大家&#xff01;&#xff01;&#xff01; 一、从执行速度上来说 drop > truncate >delete 二、从使用场景和原理上讲 1、DELETE DELETE from TABLE_NAME wh…

玩客云Armbian 23.8.1 Bullseye安装PrometheusGrafana

Welcome to Armbian 23.8.1 Bullseye with bleeding edge Linux 6.4.13-edge-meson prometheus 参考Monitoring – How to install Prometheus/Grafana on arm – Raspberry PI/Rock64 | Blogs (mytinydc.com) cd /usr/local/srcwget https://github.com/prometheus/prometh…

小程序技术实践:快速开发适配鸿蒙的App

今年&#xff0c;在中国&#xff0c;被各大媒体和开发者称为“鸿蒙元年”。 在2023年底就有业内人士透露&#xff0c;华为明年将推出不兼容安卓的鸿蒙版本&#xff0c;未来IOS、鸿蒙、安卓将成为三个各自独立的系统。 果不其然&#xff0c;执行力超强的华为&#xff0c;与202…

k8s---包管理器helm

内容预知 目录 内容预知 helm相关知识 Helm的简介与了解 helm的三个重要概念 helm的安装和使用 将软件包拖入master01上 使用 helm 安装 Chart 对chart的基本使用 查看chart信息 安装chart 对chart的基本管理 helm自定义模板 在镜像仓库中拉取chart&#xff0c;查…

使用Python合并PPT文件

在日常工作和学习中&#xff0c;我们经常需要处理和管理大量的PPT文件。如果需要将多个PPT文件合并成一个文件&#xff0c;手动操作可能会非常繁琐和耗时。今天&#xff0c;我们将介绍如何使用Python编程语言和wxPython模块创建一个简单的GUI应用程序&#xff0c;来自动合并指定…

web 应用常见的安全问题

一xss攻击 人们经常将跨站脚本攻击&#xff08;Cross Site Scripting&#xff09;缩写为CSS&#xff0c;但这会与层叠样式表&#xff08;Cascading Style Sheets&#xff0c;CSS&#xff09;的缩写混淆。因此&#xff0c;有人将跨站脚本攻击缩写为XSS。 跨站脚本攻击&#xff…

如何修改flutter的minSdkVersion版本?

在使用第三方插件的时候&#xff0c;插件对最低的 minSdkVersion版本是有要求的&#xff0c;你比如flutter 插件 webview_flutter 就会报一下错&#xff1a; minSdkVersion 16 cannot be smaller than version 19 declared in library 解决方法①&#xff1a; 这个时候我们需…

OpenCV第 1 课 计算机视觉和 OpenCV 介绍

文章目录 第 1 课 计算机视觉和 OpenCV 介绍1.机器是如何“看”的2.机器视觉技术的常见应用3.图像识别介绍4. 图像识别技术的常见应用5.OpenCV 介绍6.图像在计算机中的存储形式 第 1 课 计算机视觉和 OpenCV 介绍 1.机器是如何“看”的 我们人类可以通过眼睛看到五颜六色的世界…

Java 应用部署包优化经验分享

背景 最近接手了一个 2018 年的老项目&#xff0c;因为太久远了&#xff0c;功能上的代码不敢乱动&#xff0c;虽然是老项目&#xff0c;但最近一年也在持续加功能&#xff0c;功能不稳定&#xff0c;于是我就进入了救火式改 Bug 的状态。 功能不能妄动&#xff0c;但是这个项…

说说 typescript 的数据类型有哪些?

文章目录 一、是什么二、有哪些# boolean# number# string# array# tuple# enum# any# null 和 和 undefined# void# never# object 三、总结参考文献 一、是什么 typescript 和 javascript几乎一样&#xff0c;拥有相同的数据类型&#xff0c;另外在javascript基础上提供了更…

在字节5年被优化,太难了。。。

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 先简单说下&#xff0c;涵哥是某不知名 985 的本硕&#xff0c;17 年毕业加入字节&#xff0c;以…

[docker] Docker 基本管理

一、Docker 相关知识 1.1 Docker概述 Docker是一个开源的应用容器引擎&#xff0c;基于go语言开发并遵循了apache2.0协议开源。 Docker是在Linux容器里运行应用的开源工具&#xff0c;是一种轻量级的“虚拟机”。 Docker 的容器技术可以在一台主机上轻松为任何应用创建一个轻…

在Spring Boot中使用ZXing开源库生成带有Logo的二维码

在上一篇文章的基础上&#xff0c;我们将进一步扩展功能&#xff0c;实现在生成的二维码中嵌入Logo图片。这样的二维码更具个性化和识别度。让我们逐步完成这个功能。 第一步&#xff1a;引入Logo图片 首先&#xff0c;准备一张用作Logo的图片&#xff0c;并确保它的大小适中…

硬件基础:数字电路概述与基础门电路

什么是数字逻辑电路 数字电路是一种利用离散信号进行信息处理的电子电路系统。 它的核心特点是使用数字信号来执行算术运算和逻辑运算。数字电路的工作信号是离散的&#xff0c;通常只取两个值&#xff1a;高电平和低电平&#xff0c;分别代表数值“1”和“0”。 这种电路的基础…

解决element-ui中的el-select选择器无法显示选中内容的问题

问题描述&#xff1a; 排查方法&#xff1a; 检查数据控制台是否报错&#xff0c;无报错 检查change是否触发&#xff0c;会触发 最后开始百度&#xff0c;查看文档 官方文档有这么一段话&#xff0c;就是属性一定要挂载到data上&#xff0c;不然无法检测。 最后解决&#…

视频监控怎么管理更有效率?用这个技术就够了!

视频监控系统在现代社会中扮演着重要的角色&#xff0c;随着技术的不断发展&#xff0c;视频监控系统不仅提高了安全性&#xff0c;还为企业提供了更多的数据和智能分析功能。 客户案例 工业制造 常州某制造企业希望提高生产线的效率和安全性。通过部署泛地缘科技推出的视频监…

6-微信小程序导航跳转、下拉触底、生命周期

导航 声明式导航 <navigator> 导航组件 官网传送门 导航到tabBar页面 在使用<navigator>跳转到tabbar页面需指定url和open-type属性&#xff0c;open-type必须为switchTab 例&#xff1a;从home页跳转到message wxml <navigator url"/pages/message/me…