yum/vim工具的使用

news2024/9/24 19:21:48

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提权只输入自己的密码即可。

 

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

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

相关文章

前端面试题整理之HMTL篇(一)

HTML面试题(一) 前言: 面试题及答案解析,大部分来自网络整理,我自己做了一些简化,如果想了解的更多,可以搜索一下,前端面试题宝典微信公众号或者查百度,另外如果出现错误…

Windows环境下安装和配置Gradle

1. 概述 Gradle是Google公司基于JVM开发的一款项目构建工具,支持Maven,JCenter多种第三方仓库,支持传递性依赖管理,使用更加简洁和支持多种语言的build脚步文件,更多详情可以参阅Gradle官网 2. 下载 由于Gradle与S…

【opencv 系列】第2章 图片视频的读取和保存

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言1. 图片2.视频(读取摄像头、视频文件)2.1 从摄像头读视频2.2 从视频读取文件2.3 保存摄像头读取的视频2.4 图片的打开,读取和保存代码2.5 摄像头的打开,读取和保…

[LeetCode]1237. 找出给定方程的正整数解

题目链接:https://leetcode.cn/problems/find-positive-integer-solution-for-a-given-equation/description/ 题目描述: 样例1: 输入:function_id 1, z 5 输出:[[1,4],[2,3],[3,2],[4,1]] 解释:functi…

Linux 根目录与路径

目录 Linux的根目录 /usr目录(存放用户数据) /bin目录(存放所有用户都可使用的应用程序) /sbin目录(存放管理员才可以使用的应用程序) /opt目录(存放第三方软件) /boot目录&am…

[Android Studio] Android Studio Virtual Device(AVD)虚拟机的功能试用

🟧🟨🟩🟦🟪 Android Debug🟧🟨🟩🟦🟪 Topic 发布安卓学习过程中遇到问题解决过程,希望我的解决方案可以对小伙伴们有帮助。 🚀write…

Mindspore安装

本文用于记录搭建昇思MindSpore开发及使用环境的过程,并通过MindSpore的API快速实现了一个简单的深度学习模型。 什么是MindSpore? 昇思MindSpore是一个全场景深度学习框架,旨在实现易开发、高效执行、全场景覆盖三大目标。 安装步骤 鉴于笔者手头硬…

QM9数据集示例项目学习图神经网络

目录QM9数据集:QM9数据提取的特征:网络结构的设计官网示例代码注释:QM9数据集: QM9为小有机分子的相关的、一致的和详尽的化学空间提供量子化学特征,该数据库可用于现有方法的基准测试,新方法的开发&#…

【算法】两道算法题根据提供字母解决解码方法和城市的天际线天际线问题

算法目录解码方法Java解答参考:天际线问题Java解答参考:大家好,我是小冷。 上一篇了解了项目相关的知识点 接下来看下两道算法题吧,用Java解答,可能更能激发一下大脑思考。 解码方法 题目要求: 一条包含…

将 Supabase 作为下一个后端服务

对于想快速实现一个产品而言,如果使用传统开发,又要兼顾前端开发,同时又要花费时间构建后端服务。然而有这么一个平台(Baas Backend as a service)后端即服务,能够让开发人员可以专注于前端开发&#xff0c…

Java反序列化漏洞——CommonsCollections4.0版本—CC2、CC4

一、概述4.0版本的CommonsCollections对之前的版本做了一定的更改,那么之前的CC链反序列化再4版本中是否可用呢。实际上是可用的,比如CC6的链,引入的时候因为⽼的Gadget中依赖的包名都是org.apache.commons.collections ,⽽新的包…

【构建工具】Gradle中文教程

文章目录Gradle 简介Gradle 概述基于声明的构建和基于约定的构建为以依赖为基础的编程方式提供语言支持构建结构化深度 APIGradle 的扩展多项目构建多种方式管理依赖Gradle 是第一个构建集成工具易于移植GroovyThe Gradle wrapper自由和开源为什么使用 Groovy?Gradle 安装先决…

Pycharm搭建一个Django项目

File->new project 点击create, 等待一下即可 查看安装 Django 版本: 在 Pycharm 底部选择 Terminal 然后在里面输入:python -m django --version 启动项目: 在 Terminal 里面输入: python manage.py runserver 查看文件目…

一文精通MVCC机制

MVCC(Multi-Version Concurrency Control)多版本并发控制机制使用串行化隔离级别时,mysql会将所有的操作加锁互斥,来保证并发安全。这种方式必然降低并发性能。mysql在读已提交和可重复读隔离级别下,对一行数据的读和写两个操作默认是不会通过…

【Unity3d】Unity与iOS之间通信

在unity开发或者sdk开发经常遇到unity与移动端原生层之间进行通信,这里把它们之间通信做一个整理。 关于Unity与Android之间通信,参考【Unity3d】Unity与Android之间通信 Unity调用Objective-C 主要分三个步骤: (一)、在xcode中定义要被u…

php学习笔记

之前看过php的基础教学视频,了解了一下,自己没有上手实践,现在为了项目需要,需要扎实学习一下,所以做一下笔记吧。 php学习笔记1.基础2.动态网站的开发学习2.1会员管理系统1.基础 之前看过一个4小时的基础视频&#x…

Go 数组和切片反思

切片的底层数据结构是数组,所以,切片是基于数组的上层封装,使用数组的场景,也完全可以使用切片。 类型比较 我看到 go 1.17 有对切片和数组转换的优化,禁不住纳闷,有什么场景是必须数组来完成的呢&#x…

vue项目第七天

项目中模块操做业务使用ajax(需要使用接口认证)修改封装的findData发送ajax请求管理员列表内部搜索业务复用之前的findData 方法即可实现整个查询业务。实现退出业务在下拉菜单上添加事件以及属性。用户退出登录,二次登录系统菜单可能不存在的…

linux环境搭建私有gitlab仓库

搭建之前,需要安装相应的依赖包,并且要启动sshd服务(1).安装policycoreutils-python openssh-server openssh-clients [rootVM-0-2-centos ~]# sudo yum install -y curl policycoreutils-python openssh-server openssh-clients [rootVM-0-2-centos ~]…

(API)接口测试的关键技术

接口测试也就是API测试,从名字上可以知道是面向接口的测试活动。所以在讲API测试之前,我们应该说清楚接口是什么,那么接口就是有特定输入和特定输出的一套逻辑处理单元,而对于接口调用方来说,不用知道自身的内部实现逻…