当前位置: 首页 > news >正文

【Hello Linux】Linux工具介绍 (yum vim)

作者:@小萌新
专栏:@Linux
作者简介:大二学生 希望能和大家一起进步!
本篇博客简介:介绍Linux的常用工具 yum和vim

Linux工具介绍

  • Linux中的软件管理工具 -- yum
    • 在windows下安装软件的方式
    • 在Linux下安装软件的方式
    • 认识yum
    • 查找软件包
    • 安装软件包
    • 番外 : 如何实现云服务器和本地计算机的文件互传
    • 卸载软件
  • Linux中的编辑器 -- vim
    • vim的基本概念
    • vim各模式切换
    • vim命令模式命令
    • vim底行模式命令
    • vim配置

Linux中的软件管理工具 – yum

在windows下安装软件的方式

在大概15年左右的时候 我们的电脑想要下载软件需要去网站上找到该软件的安装包下载到本地之后进行安装 但是这种方式十分的不安全 一不小心电脑就有可能被病毒入侵

之后各个品牌的电脑乃至个人手机都推出了自己的应用商店 从而让我们下载软件变得更加方便快捷了

在Linux下安装软件的方式

在Linux系统下安装软件的方式有以下三种

  1. 下载程序的源代码 自己进行编译 得到可执行程序
  2. 通过rpm获取安装包 通过rpm命令进行安装 (未解决依赖问题)
  3. 通过yum进行安装

通过yum进行安装也是我们最常用的一种方式

那么什么是yum呢?

认识yum

yum是一个在Fedora、RedHat以及CentOS中的前端软件包管理器 能够从指定的服务器自动下载RPM包并且安装 可以自动处理依赖性关系 并且一次安装所有依赖的软件包 无须繁琐地一次次下载、安装

在这里插入图片描述
它就可以类比我们的windows上的软件商店

不过这里要注意的是 windows上的软件商店可能支持几个软件同时下载 但是一个服务器同一时刻只允许一个yum进行安装

此外因为yum下载的时候是从包服务器中寻找数据下载我们还必须要确认自己的主机连接了网络

我们可以使用ping命令来确认自己是否连接网络

在这里插入图片描述

查找软件包

我们可以通过下面的命令来查找软件包

yum list

我们使用这个指令 可以罗列出可以下载的所有软件

在这里插入图片描述
这里对于我们list出来的各种软件解释下

  • 第一列的结构一般是这样子 软件名字.系统架构 比如说zvbi.x86_64 它的软件名就是zvbi 可以在x86_64的系统架构下运行
  • 第二列的结构一般是这样子 主版本号.次版本号.源程序发行号-软件包的发行号.主机平台 其中需要解释的是后面的 el7 它代表可以在 centos7/redhat7的平台下运行
  • 第三列代表的是源 就好像你在应用市场下载了一个王者荣耀后面@腾讯一样

下面我们使用前面学到的管道和查找指令 来查找 lrzsz 软件

我们在linux系统中敲出以下代码

在这里插入图片描述

安装软件包

我们还可以使用 yum install指令来下载软件

还是拿前面的 lrzsz软件为例

在这里插入图片描述
于是我们就需要使用sudo指令了

在这里插入图片描述
我们这里使用了 -y指令 这是因为安装软件的时候有可能会出现很多的选项让我们选择是否启动 (相当于windows安全软件的next) 而使用了- y指令之后这些选项就是默认开启的了

我们总结下

  • 安装软件的时候由于需要像系统写入东西 所以需要root权限
  • 如果我们不想回答问题我们可以直接只用 -y指令
  • yum安装只能一次安装一个软件 如果一次安装多个会报错

番外 : 如何实现云服务器和本地计算机的文件互传

我们可以使用 rz -E指令

通过该指令 我们可以选择从本地服务器选择文件上传到云服务器

在这里插入图片描述
此外我们还可以使用 sz + 文件名来讲云服务器的内容上传到本地
在这里插入图片描述

卸载软件

我们可以使用以下指令来卸载软件

yum remove + 软件名

在这里插入图片描述

我们总结下

  • 卸载软件的时候也需要root权限
  • 如果我们不想回答问题我们可以直接只用 -y指令

Linux中的编辑器 – vim

vim的基本概念

vim的本质上是一个多模式的文本编辑器

它主要有三种模式 我们这里会逐一介绍

1. 命令模式 (Normal mode)

在命令模式下 我们可以控制光标的移动以及字符 字或行的删除 复制粘贴 剪贴等操作

2. 插入模式(Insert mode)

只有在插入模式下才能进行文字输入 该模式是我们使用最频繁的编辑模式

3. 底行模式(Command mode)

我们的保存 退出等指令都要在底行模式中进行

vim各模式切换

首先我们使用一张图来理解vim中三种模式之间的联系

在这里插入图片描述

看上面的图我们就能知道 这三种模式怎么切换了

  • 普通模式通过 按一次 i键 切换到插入模式
  • 普通模式通过 按住shitf + ;键切换到底行模式
  • 其他两种模式通过 esc 切换到普通模式
  • 底行模式和插入模式不能互通

由于vim中的插入模式并没有什么特殊的命令 使用起来和我们的文本编辑器其实差不了多少 所以我们在这里就不过多介绍了

我们这里主要着重介绍下 vim的普通模式(命令模式)和底行模式的命令

下面的字符 n 表示一个具体的数字 比如说 8 12 123等

vim命令模式命令

移动光标相关

  • 按「k」:光标上移
  • 按「j」:光标下移
  • 按「h」:光标左移
  • 按「l」:光标右移
  • 按「$」:移动到光标所在行的行尾
  • 按「^」:移动到光标所在行的行首
  • 按「gg」:移动到文本开始
  • 按「Shift+g」:移动到文本末尾
  • 按「n+Shift+g」:移动到第n行行首
  • 按「n+Enter」:当前光标向下移动n行
  • 按「w」:光标从左到右,从上到下的跳到下一个字的开头
  • 按「e」:光标从左到右,从上到下的跳到下一个字的结尾
  • 按「b」:光标从右到左,从下到上的跳到上一个字的开头

删除相关

  • 按「x」:删除光标所在位置的字符
  • 按「nx」:删除光标所在位置开始往后的n个字符
  • 按「X」:删除光标所在位置的前一个字符
  • 按「nX」:删除光标所在位置的前n个字符
  • 按「dd」:删除光标所在行
  • 按「ndd」:删除光标所在行开始往下的n行

复制粘贴相关

  • 按「yy」:复制光标所在行到缓冲区
  • 按「nyy」:复制光标所在行开始往下的n行到缓冲区
  • 按「yw」:将光标所在位置开始到字尾的字符复制到缓冲区
  • 按「nyw」:将光标所在位置开始往后的n个字复制到缓冲区
  • 按「p」:将已复制的内容在光标的下一行粘贴上
  • 按「np」:将已复制的内容在光标的下一行粘贴n次

剪切

  • 按「dd」:剪切光标所在行
  • 按「ndd」:剪切光标所在行开始往下的n行
  • 按「p」:将已剪切的内容在光标的下一行粘贴上
  • 按「np」:将已剪切的内容在光标的下一行粘贴n次

撤销

  • 按「u」:撤销
  • 按「Ctrl+r」:恢复刚刚的撤销

大小写切换

  • 按「~」:完成光标所在位置字符的大小写切换
  • 按「n~」:完成光标所在位置开始往后的n个字符的大小写切换

替换

  • 按「r」:替换光标所在位置的字符
  • 按「R」:替换光标所到位置的字符,直到按下「Esc」键为止

更改

  • 按「cw」:将光标所在位置开始到字尾的字符删除,并进入插入模式
  • 按「cnw」:将光标所在位置开始往后的n个字删除,并进入插入模式

翻页

  • 按「Ctrl+b」:上翻一页
  • 按「Ctrl+f」:下翻一页
  • 按「Ctrl+u」:上翻半页
  • 按「Ctrl+d」:下翻半页

vim底行模式命令

行号设置

  • 「set nu」:显示行号
  • 「set nonu」:取消行号

保存退出

  • 「w」:保存文件
  • 「q」:退出vim,如果无法离开vim,可在「q」后面跟一个「!」表示强制退出
  • 「wq」:保存退出

分屏指令

  • 「vs 文件名」:实现多文件的编辑
  • 「Ctrl+w+w」:光标在多屏幕下进行切换

执行指令

  • !+指令」:在不退出vim的情况下 可以在指令前面加上「!」就可以执行Linux的指令 例如查看目录 编译当前代码等

vim配置

vim的手动配置比较复杂也很容易出错 这里不做过多的讨论

那么vim怎么自动配置呢?

大家可以访问这个网站

VimForCpp

上面有对于vim配置后的功能介绍和配置代码

之后在 shell 中执行指令(想在哪个用户下让vim配置生效, 就在哪个用户下执行这个指令. 强烈 “不推荐” 直接在 root 下执行):

curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh

需要按照提示输入 root 密码就可以了

配置后的vim此时就能变成一个小型集成ide 具有自动换行 语法高亮等特性了

相关文章:

【Hello Linux】Linux工具介绍 (yum vim)

作者:小萌新 专栏:Linux 作者简介:大二学生 希望能和大家一起进步! 本篇博客简介:介绍Linux的常用工具 yum和vim Linux工具介绍Linux中的软件管理工具 -- yum在windows下安装软件的方式在Linux下安装软件的方式认识yum…...

多种充电模式_手持无线充气泵方案

一、手持无线充气泵手持无线充气泵是一个通过锂电池供电达到无需插电就能使用的便携式充气泵,它的适用场景大部分是为身处户外没有办法接通电源的人而设计的,方便人们的出行也可解燃眉之急。不仅如此,为预防手持无线充气泵的锂电池电量用完而…...

【网络基础】DNS是什么

本文不会直接引入复杂枯燥概念,用形象例子通俗讲解,旨在入门理解。 DNS作用 DNS是用来做域名解析的。 相当于把网址翻译成实际ip地址,供其他设备访问。 一个例子 有一个网站的服务器IP地址为1.1.1.1,用电脑访问该网站的话只需…...

二叉树的性质与推导及常见习题整理

目录 一、性质推导 二、常见的二叉树性质习题 1. 某二叉树共有 399 个结点,其中有 199 个度为 2 的结点,则该二叉树中的叶子结点数为()。 2.在具有 2n 个结点的完全二叉树中,叶子结点个数为(&#xff…...

亚马逊卖家测评补单的重要性和缺点

对于亚马逊、沃尔玛、ebay、wish、newegg、速卖通、阿里国际站、shopee、lazada、temu、乐天、toktok、joom、ozon等卖家来说,测评补单是一个比较常见的话题,因为测评可以给自己产品留下优质的评价,让国外真实买家更加明确,便捷的…...

Java类和对象超详细整理,适合新手入门

目录 一、驼峰命名法 二、Java注释 三、转义符 四、Java程序它的基本结构是什么? 五、Java中的类 六、创建类 七、定义main方法 八、执行代码输出语句 九、Java中的对象 十、创建对象 十一、类与对象的关系 一、驼峰命名法 包名:多单词组成所…...

MySQL:连explain的type类型都没搞清楚,怎敢说精通SQL优化?

我们在使用SQL语句查询表数据时,提前用explain进行语句分析是一个非常好的习惯。通过explain输出sql的详细执行信息,就可以针对性的进行sql优化。 今天我们来分析一下,在explain中11种不同type代表的含义以及其应用场景。 1,sys…...

6.11 极分解

文章目录计算方法代码实现计算方法 一个复数可以写成极坐标形式:zreiθzre^{i\theta}zreiθ.这种分解,左边代表长度,右边代表角度。由此为灵感来源,前人对矩阵也有类似的分解。就是猜想一个线性变换对矩阵的作用,是不是可以分解为…...

Spring、SpringMVC、Shiro、Maven

一、SpringSpring是一个为了解决企业应用程序开发复杂性而创建的开源框架,其核心是IOC–控制反转、AOP–面向切面编程。框架的主要优势之一就是其分层架构(WEB层(springMvc)、业务层(Ioc)、持久层&#xff…...

element-plus 使用笔记

npm install element-plus --save自动导入 npm install -D unplugin-vue-components unplugin-auto-import// vite.config.jsimport AutoImport from unplugin-auto-import/vite import Components from unplugin-vue-components/vite import { ElementPlusResolver } from …...

《蓝桥杯每日一题》 前缀和·Acwing 3956. 截断数组

1.题目https://www.acwing.com/problem/content/3959/给定一个长度为 n 的数组a1,a2,…,an。现在,要将该数组从中间截断,得到三个非空子数组。要求,三个子数组内各元素之和都相等。请问,共有多少种不同的截断方法?输入…...

促进关键软件高层次人才培养:平凯星辰与华东师范大学签订联合博士培养合作协议

2022 年年初,平凯星辰入选首批工信部教育部支持联合培养国家关键软件高层次人才计划。该计划旨在探索关键软件产教融合育人模式,超常规加快培养一批急需高层次人才,以及探索关键软件联合技术攻关新模式。2022 年年底,在该计划下 平…...

Java程序员的日常——经验贴

关于文件的解压和压缩 如果你的系统不支持tar -z命令 前往讨论 如果是古老的Unix系统,可能并不认识tar -z命令,因此如果你想要压缩或者解压tar.gz的文件,就需要使用gzip或者gunzip以及tar命令了。 关于tar.gz可以这么理解,tar结…...

电商API社区,商品数据,关键词搜索等

1. 需要做的事情 l 商品详情页实现 1、商品查询服务事项 2、商品详情展示 3、添加缓存 2. 实现商品详情页功能 2.1. 功能分析 1、Taotao-portal接收页面请求,接收到商品id。 2、调用taotao-rest提供的商品详情的服务,把商品id作为参数传递给服务。接…...

LEADTOOLS 22.0.6 UPDATE-Crack

OCR SDK 库 许多 OCR 增强功能 LEAD 行业领先的人工智能 OCR SDK 在以下方面获得了显着的识别优化:斜体、大写和小写字母、文本行组装和单词构建、列检测、基线检测和文本行分割。 LEADTOOLS为.NET 6、. NET Framework、Xamarin、UWP、C#、VB、C/C、Java、Objective…...

什么是OJ? 东方博宜题库部分题解

什么是OJ ? Online Judge 比如这样的:Home - 一本通OJ Q:这个在线裁判系统使用什么样的编译器和编译选项? A:系统运行于Debian/Ubuntu Linux. 使用GNU GCC/G++ 作为C/C++编译器, C: gcc Main.c -o Main -fno-asm -O2 -Wall -lm --static -std=c99 -DONLINE_JUDGE C++: g++ …...

企业工程项目管理系统源码的各模块及其功能点清单

工程项目各模块及其功能点清单 一、系统管理 1、数据字典:实现对数据字典标签的增删改查操作 2、编码管理:实现对系统编码的增删改查操作 3、用户管理:管理和查看用户角色 4、菜单管理:实现对系统菜单的增删改查操…...

【电商开发手册】订单-下单

下单需求 所谓下单,本质上就是买卖双方通过确认一系列信息并且签订电子合同的过程 在电商平台的下单过程中,也需要确定买卖双方的一系列信息: 买方:用户确认收货地址、支付方式、配送方式等等 卖方:卖方需要进行供…...

数据结构 - 优先级队列(堆)

文章目录前言1.介绍优先级队列2. 认识堆3. 实现优先级队列3.1 了解优先级队列的构造方法:3.2 使用优先级队列解决问题:总结前言 本篇PriorityQueue优先级队列的介绍其底层是堆,关于堆的认识,使用优先级队列能解决的一些问题&…...

PDF内容提取器:ByteScout PDF Extractor SDK Crack

ByteScout PDF Extractor SDK – 用于 PDF 到 JSON、PDF 到 Excel、CSV、XML、从 .NET 和 ASP.NET 从 PDF 中提取文本的 PDF 提取器库 ByteScout PDF Extractor SDK – 用于 PDF 到 JSON、PDF 到 Excel、CSV、XML、从 .NET 和 ASP.NET 从 PDF 中提取文本的 PDF 提取器库​ ​ ​…...

字母板上的路径[提取公共代码,提高复用率]

提取公共代码前言一、字母版上的路径二、贪心1、idea2、go3、代码不断拆分复用的过程总结参考文献前言 写代码,在提高效率的同时,要方便人看,这个人包括自己。大函数要拆分成一些小函数,让每个函数的宏观目的和步骤都显得清晰&am…...

c# winform错误大全

c# winform 错误大全为了实现安装包安装完成后,启动程序。System.BadImageFormatException: 未能加载文件或程序集“file:///C:\xxxxxxxxx\xxxxxxx.exe”或它的某一个依赖项。生成此程序集的运行时比当前加载的运行时新,无法加载此程The version of the …...

AI_News周刊:第一期

2023.02.06—2023.02.12 关于ChatGPT的前言: 在去年年末,OpenAI的ChatGPT在技术圈已经火了一次,随着上周它的二次出圈,ChatGPT算得上是人工智能领域的一颗明星,它在聊天机器人领域有着不可忽视的影响力。其准确、快速…...

搭建mysql主从复制

前言: 👏 作者简介:我是笑霸final,一名热爱技术的在校学生。 📝 个人主页:个人主页1 || 笑霸final的主页2 📕 系列专栏:数据库 📧 如果文章知识点有错误的地方&#xff0…...

内存溢出、内存泄露的概述及常见情形

内存溢出(OutofMemoryError) 简述 java doc 中对 Out Of Memory Error 的解释是,没有空闲内存,并且垃圾收集器也无法提供更多内存。 JVM 提供的内存管理机制和自动垃圾回收极大的解放了用户对于内存的管理,由于 GC&…...

Linux 中断实验

目录 一、Linux 中断简介 上半部与下半部 二、添加设备树 三、编写驱动 1、定义宏 2、编写一个key结构体 3、imx6uirq设备添加成员 ​编辑4、按键中断处理函数 5、按键初始化 6、在驱动入口添加初始化 7、 驱动出口函数 代码如下 四、利用定时器进行消抖处理 1、添…...

【c++】指针

文章目录指针的定义和使用指针所占的内存空间空指针野指针const修饰指针指针和数组指针和函数指针、数组、函数案例:冒泡排序指针的定义和使用 指针定义的语法:数据类型 * 指针变量名 使用指针: 可以通过解引用的方式来找到指针指向的内存&…...

别具一格的婚礼,VR全景+婚礼的优势展现在哪里?

随着90后、95后逐渐步入结婚的主力军中,如何策划一场别具一格的婚礼是许多年轻人所头疼的,那么今年我们就可以玩点新潮的,VR婚礼或许是个不错的选择。 VR全景婚礼就是通过全景摄像机对婚礼进行记录,不但可以帮助新人捕捉婚礼的精彩…...

【GD32F427开发板试用】5. SPI驱动TFTLCD屏幕

本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站。作者:hehung 之前发帖 【GD32F427开发板试用】1. 串口实现scanf输入控制LED 【GD32F427开发板试用】2. RT-Thread标准版移植 【GD32F427开发板试用…...

测试2年还拿实习生的薪资打发我,你后悔去吧····

20年7月大学毕业,学的计算机科学专业。因为考研之后,秋招结束了。没什么更多的岗位选择,就想找个工作先干着,然后亲戚在一家大厂公司上班说要招测试,所以就来做测试了。 虽然都是属于计算机大类,但自己专业…...

网站建设优势/腾讯朋友圈广告怎么投放

docker run --namemydemo -p -d 2222:80 imagename --name: 指定容器名称 -p:指定容器端口号 -d:指定容器后台运行转载于:https://www.cnblogs.com/lishidefengchen/p/10709828.html...

网络工程有限公司/品牌企业seo咨询

965. 单值二叉树 难度简单69 如果二叉树每个节点都具有相同的值,那么该二叉树就是单值二叉树。 只有给定的树是单值二叉树时,才返回 true;否则返回 false。 示例 1: 输入:[1,1,1,1,1,null,1] 输出:true示例…...

全国企业信用信息查询/东莞网络优化哪家公司好

可以添加一列,命名为NEW,此列的值用随机函数表示。 然后选中NEW列,点A-Z,此时EXCEL会让我们选择是扩展其他列,还是仅排序当前选中列,选扩展。 然后其他列就被随机排序了。 注意到:由于排序后&am…...

杭州网站设计工作室/河北百度seo软件

没有相关的视频教程及相关的学习线路,学起来是一件很费劲的事情,还有很多人从网上及其它渠道购买视频,这些视频资料大多是盗版,上当受骗的人不在少数。为此千锋小编呕心沥血整理了这套零基础全套Linux云计算教程,不管是…...

怎么把地图放到网站上/兰州网络推广技术

小伙伴们好啊,今天咱们来分享一组WPS表格中的实用技巧,点滴积累,也能提高工作效率。1、突出显示重复数据表格核对两眼花,丈母娘看成孩他妈。对于重复的身份证号、银行卡号等等进行识别,目测可是不太方便。选中数据区域…...

我学我做我知道网站/网站快速收录技术

本文将根据API文档中关于主题的介绍做的一次演练,以便熟悉自定义主题的过程。练习环境:Sencha Cmd v4.0.1.45Ruby 1.9.3-p392firefox 26首先,使用以下Sencha Cmd命令创建一个名为TestMyTheme的应用程序:sencha -sdk c:\ext4 gener…...