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

yum/vim工具的使用

yum

我们生活在互联网发达的时代,手机电脑也成为了我们生活的必须品,在你的脑海中是否有着这样的记忆碎片,在一个明媚的早上你下定决心准备发奋学习,“卸载”了你手机上的所有娱乐软件,一心向学!可是到了下午,你焦虑无比,在屋里走来走去,最后说服自己点开了手机的“应用商城”,下回了抖音、游戏......。

上述卸载和安装软件的过程在Linux中应该如何实现呢?在Linux下安装软件, 一个通常的办法是下载程序的源代码, 并进行编译, 得到可执行程序,这个过程有些麻烦。为了方便,一些人把常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装。yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器。软件包和软件包管理器, 就好比 "App" 和 "应用商店" 这样的关系.

yum三板斧

查看软件

可以用下述命令查看包管理器中都有什么软件包,下述截图为查看后显示的部分软件!

yum list

但是上述查看过程包的数量众多,为了更加准确、快捷,可以根据需求使用grep来筛选我们需要的软件包。

yum list | grep sl

 这里你肯定会存在着这样的疑问,这么多的软件,我需要用什么,它们的功能都是什么。这其实需要我们不断的学习和进步,当我们学习的时间越长,见过的用过的软件不断增多,这个问题也就自然解决了!

下载安装软件

下载好软件包后,还需要安装,安装的本质其实就是拷贝,会将其拷贝到特定的目录,然而目录是有权限的,所以需要用root账号进行安装或者sudo提权进行安装!

yum install sl

尝试安装sl :

 当看到complate时,说明安装成功!

 验证“小火车”是否安装成功:

sl

卸载软件

yum remove sl

使用“三板斧”安装rzsz

resz工具用于 windows 机器和远端的 Linux 机器通过 XShell 传输文件。

●筛选查找软件包

yum list | grep lrzsz

●安装软件包

yum install lrzsz

 lrzsz已经安装过了,这里就不在删除重新安装了。 

将windows上的文件传输到linux中:可以直接拖拽,也可通过命令

rz


 

 将linux.txt改名,修改内容在传回到windows桌面上:

vim

vim常用模式

vim是一个多模式编辑器,我们先来掌握vim的三种常用模式:命令模式(Normalmode)、插
入模式(Insert mode)和底行模式(last line mode)。

 ●三种模式的相互切换以及保存退出

1.正常模式切换至插入模式:输入a、输入i、输入o。
2.正常模式切换至末行模式:shift + ; 其实就是输入:。
3.插入模式切换至正常模式,按ESC。
4.末行模式切换至正常模式:按ESC。
5.退出vim及保存文件,在底行模式下:
w:保存当前文件
wq保存并退出
q!不保存直接退出 

 ●命令模式(Normalmode):进入插入模式和底行模式的“中转站”,可以控制屏幕光标的移动,对字符、字或行进行删除、复制粘贴等操作。

进入vim之后,是处于命令模式,想要输入文字需要转换到插入模式。

● 插入模式(Insert mode):此模式下可以进行文字输入!按ESC回到命令模式,不能直接切到底行模式。

底行模式(last line mode):文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作按ESC回到命令模式,不能直接切换到底行模式。

vim常用操作

●命令模式下:

1.光标移动操作

在命令模式下,可以用上下左右键或者h/j/k/l来移动光标:

2.光标定位操作

3.文本复制相关操作

复制:yy复制当前行,支持多行复制nyy,n表示行数

粘贴:p粘贴,将复制内容粘贴到当前位置,支持将当前内容进行多次粘贴np,n表示粘贴的次数。

删除:dd删除当前行,支持多行删除ndd,n代表行数。

 剪切:ndd+p,将剪切的内容粘贴到当前行位置。

4.文本编辑操作

 r:替换(修改)光标所在字符。

shift+r = R:替换(修改)多个字符。

 行内删除,x向后删除,shift+x=X向前删除,支持nx,nX,支持p。

5.撤销操作

u:撤销。

ctrl+r:取消u操作,对撤销进行撤销。

●底行模式下:

列出取消行号

set nu//设置行号
set nonu//取消行号

 查找替换

%s/printf/cout/g

 w: 在冒号输入字母w就可以将文件保存起来
q:按「q」就是退出,如果无法离开vim,可以在「q」后跟一个「!」强制离开vim。
wq:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件

vim配置

上面介绍了vim的一些基本使用,但是用起来肯定非常的不舒服,很像记事本,编写代码的体验感很差,基于这样的情况,我们可以根据自己的喜好来配置vim,也不必担心自己的配置会影响到其他用户,因为每一个用户在自己的家目录下都有一个属于自己的配置文件.vimrc,所谓的vim配置也就是修改.vimrc。

在要配置vim的用户下,打开.vimrc文件,向文件写入常用配置选项:

1.添加set nu

高亮光标坐在的行列:

set cursorline

当然还有很多配置选项很有意思,可以在网上自行搜索测试。

添加“白名单”

用root账号登录,修改/etc/sudoers 文件,将受信任用户添加进去,该用户下次sudo提权只输入自己的密码即可。

 

相关文章:

yum/vim工具的使用

yum 我们生活在互联网发达的时代,手机电脑也成为了我们生活的必须品,在你的脑海中是否有着这样的记忆碎片,在一个明媚的早上你下定决心准备发奋学习,“卸载”了你手机上的所有娱乐软件,一心向学!可是到了下…...

内网渗透(三十九)之横向移动篇-pass the ticket 票据传递攻击(PTT)横向攻击

系列文章第一章节之基础知识篇 内网渗透(一)之基础知识-内网渗透介绍和概述 内网渗透(二)之基础知识-工作组介绍 内网渗透(三)之基础知识-域环境的介绍和优点 内网渗透(四)之基础知识-搭建域环境 内网渗透(五)之基础知识-Active Directory活动目录介绍和使用 内网渗透(六)之基…...

Unity性能优化之纹理格式终极篇

知识早班车:1、当n大于1时,2的n次幂一定能被4整除;证明:2^n 2^2*2^(n-1) 4*2^(n-1)2、4的倍数不一定都是2的次幂;证明:4*3 12;12不是2的次幂3、Pixel(像素)是组成图片…...

【Spark分布式内存计算框架——Spark SQL】9. Dataset(下)RDD、DF与DS转换与面试题

5.3 RDD、DF与DS转换 实际项目开发中,常常需要对RDD、DataFrame及Dataset之间相互转换,其中要点就是Schema约束结构信息。 1)、RDD转换DataFrame或者Dataset 转换DataFrame时,定义Schema信息,两种方式转换为Dataset时…...

Windows 环境下,cmake工程导入OpenCV库

目录 1、下载 OpenCV 库 2、配置环境变量 3、CmakeLists.txt 配置 1、下载 OpenCV 库 OpenCV官方下载地址:download | OpenCV 4.6.0 下载完毕后解压,便可以得到下面的文件 2、配置环境变量 我们需要添加两个环境变量,一个是 OpenCVConfi…...

微服务架构设计模式-(16)重构

绞杀者应用程序 由微服务组成的应用程序,将新功能作为服务,并逐步从单体应用中提取服务来实现。好处 尽早并频繁的体现价值 快速开发交付,使用 与之相对的是“一步到位”重构,这时间长,且期间有新的功能加入&#xff…...

数据结构:归并排序和堆排序

归并排序 归并排序(merge sort)是利用“归并”操作的一种排序方法。从有序表的讨论中得知,将两个有序表“归并”为一个有序表,无论是顺序表还是链表,归并操作都可以在线性时间复杂度内实现。归并排序的基本操作是将两个位置相邻的有序记录子序列R[i…m]R[m1…n]归并为一个有序…...

基于easyexcel的MySQL百万级别数据的excel导出功能

前言最近我做过一个MySQL百万级别数据的excel导出功能,已经正常上线使用了。这个功能挺有意思的,里面需要注意的细节还真不少,现在拿出来跟大家分享一下,希望对你会有所帮助。原始需求:用户在UI界面上点击全部导出按钮…...

js-DOM02

1.DOM查询 - 通过具体的元素节点来查询 - 元素.getElementsByTagName() - 通过标签名查询当前元素的指定后代元素 - 元素.childNodes - 获取当前元素的所有子节点 - 会获取到空白的文本子节点 …...

作为一名开发工程师,我对 ChatGPT 的一些看法

ChatGPT 又又火了。 ChatGPT 第一次爆火是2022年12月的时候,我从一些球友的讨论中知道了这个 AI 程序。 今年2月,ChatGPT 的热火更加猛烈,这时我才意识到,原来上次的热火只是我们互联网圈子内部火了,这次是真真正正的破圈了,为大众所熟悉了。 这个 AI 程序是一个智能问…...

Flask中基于Token的身份认证

Flask提供了多种身份认证方式,其中基于Token的身份认证是其中一种常用方式。基于Token的身份认证通常是在用户登录之后,为用户生成一个Token,然后在每次请求时用户将该Token作为请求头部中的一个参数进行传递,服务器端在接收到请求…...

波奇学数据结构:时间复杂度和空间复杂度

数据结构:计算机存储,组织数据方式。数据之间存在多种特定关系。时间复杂度:程序基本操作(循环等)执行的次数大O渐进法表示法用最高阶的项来表示,且常数变为1。F(n)3*n^22n1//F(n)为…...

移动OA办公系统为企业带来便捷办公

移动OA系统是指企业员工同手机等移动设备来使用OA办公系统,在外出差的员工只需要通过OA系统的手机APP就可以接收相关的新信息。PC办公与移动OA办公的相结合,构建用户单位随时随地办公的一体化环境。 相比PC办公,移动OA办公给企业带来更多的便…...

什么是Type-c口?Type-c口有什么优势?

什么是Type-C接口 Type-C接口有哪些好处坏处 说起“Type-C”,相信大家都不会陌生,因为最近拿它大做文章的厂商着实不少,但要具体说清楚Type-C是什么,估计不少人只能说出“可以正反插”“USB的一种”之类的大概。其实,T…...

Go开发者常犯的错误,及使用技巧 (1)

代码规范 命名不规范 变量名要有意义,不能随便取a,b,c 如果只是纯粹的算法题,这样问题不大。但工程上的代码可读性要求较高,不能随意命名变量名,例如: for _, v : range userList {// ... }如果for语句块简短还好&…...

Servlet 作业

一、填空题1. Servlet 中使用Session 对象的步骤为:调用HttpServletRequest.getSession()的得到Session对象,查看Session对象,在会话中保存数据。2. http 全称是_HyperText Transfer Protocol3. 用户可以有多种方式请求Servlet,如…...

Hive高阶函数:explode函数、Lateral View侧视图、聚合函数、增强聚合

Hive高阶函数 文章目录Hive高阶函数explode函数Lateral View侧视图原理语法聚合函数增强聚合grouping setsCUBEROLL UPexplode函数 explode接收map、array类型的数据作为输入,然后把输入数据中的每个元素拆开变成一行数据,一个元素一行。explode执行效果…...

信息系统服务管理

一、信息系统服务业及发展二、信息系统工程监理的概念及发展三、信息系统运行维护的概念和发展 IT服务管理(ITSM) 四、信息技术服务管理的标准和框架 IT服务标准体系(ITSS) 一、信息系统服务业及发展 总结:前景很好 二、信息系…...

Windows10 安装ElasticStack8.6.1

一、安装ElasticSearch8.6.1 1.官网下载ElasticSearch8.6.1压缩包后解压 2.安装为服务 elasticsearch-service.bat install 3.运行 elasticsearch-service.bat start 4.通过浏览器访问 http://localhost:9200/ 提示需要登录,但不知密码是啥。 5.重置密码 ela…...

gRPC 非官方教程

一、 简介 gRPC的定义: 一个高性能、通用的开源RPC框架主要面向移动应用开发: gRPC提供了一种简单的方法来精确地定义服务和为iOS、Android和后台支持服务自动生成可靠性很强的客户端功能库。基于HTTP/2协议标准而设计,基于ProtoBuf(Protoc…...

python/java环境配置

环境变量放一起 python: 1.首先下载Python Python下载地址:Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个,然后自定义,全选 可以把前4个选上 3.环境配置 1)搜高级系统设置 2…...

视频字幕质量评估的大规模细粒度基准

大家读完觉得有帮助记得关注和点赞!!! 摘要 视频字幕在文本到视频生成任务中起着至关重要的作用,因为它们的质量直接影响所生成视频的语义连贯性和视觉保真度。尽管大型视觉-语言模型(VLMs)在字幕生成方面…...

【AI学习】三、AI算法中的向量

在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...

LLM基础1_语言模型如何处理文本

基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...

Java入门学习详细版(一)

大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...

c#开发AI模型对话

AI模型 前面已经介绍了一般AI模型本地部署,直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型,但是目前国内可能使用不多,至少实践例子很少看见。开发训练模型就不介绍了&am…...

【论文阅读28】-CNN-BiLSTM-Attention-(2024)

本文把滑坡位移序列拆开、筛优质因子,再用 CNN-BiLSTM-Attention 来动态预测每个子序列,最后重构出总位移,预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵(S…...

【从零学习JVM|第三篇】类的生命周期(高频面试题)

前言: 在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期,让读者对此有深刻印象。 目录 ​…...

【JavaSE】多线程基础学习笔记

多线程基础 -线程相关概念 程序(Program) 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存…...