Linux基础之yum和vim

news2024/12/28 19:48:23

目录

一、软件包管理器yum

1.1 软件包的概念

1.2 软件包的查看

1.3 软件包的安装和删除

二、Linux编辑器之vim

2.1 vim的基本概念

2.2 正常模式(命令模式)

2.3 底行模式

2.4 输入模式

2.5 替换模式

2.6 视图模式

2.7 总结


一、软件包管理器yum

1.1 软件包的概念

       在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.软件包和软件包管理器, 就好比 "App" 和 "应用商店" 这样的关系.yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, RedHat, Centos等发行版上。
        注意事项:关于 yum 的所有操作必须保证主机(虚拟机)网络畅通!!

1.2 软件包的查看

       通过 yum list 命令可以罗列出当前一共有哪些软件包. 由于包的数目可能非常之多, 当我们只需要查询其中某些包时,就可以用grep指令进行筛选。例如:

yum list | grep lrzsz

结果如下:

1.3 软件包的安装和删除

 通过 yum, 我们可以通过很简单的一条命令完成 gcc 的安装。

sudo yum install + 想安装的软件包名

       yum 会自动找到都有哪些软件包需要下载, 这时候敲 "y" 确认安装.出现 "complete" 字样, 说明安装完成。
注意事项:

  • 安装软件时由于需要向系统目录中写入内容, 一般需要 sudo 或者切到 root 账户下才能完成。
  • yum安装软件只能一个装完了再装另一个. 正在yum安装一个软件的过程中, 如果再尝试用yum安装另外一个软件, yum会报错。

同样如果我们想要卸载一款软件也相当的简单,只需要一条命令就行了。

sudo yum remove + 你想删除的软件名

二、Linux编辑器之vim

2.1 vim的基本概念

简单来说,vim就相当于一款文本编辑器,通过其我们可以编辑我们所创建的文件内容。
vim总共有12中模式,但我们经常使用的就5种,本文就主要介绍这5种模式。

2.2 正常模式(命令模式)

如何进入正常模式呢?
其实当我们用vim打开一个文件时,默认进入的就是正常模式。
例如当我输入 vim test.c 时,我们会进入到如下界面:

那么在该模式我们可以干什么呢?
我们可以通过一些指令来复制删除一些内容,也可以跳转我们的所在行和光标所在位置。

  • 定位至代码的第一行
    在正常模式下输入 gg。
  • 定位至代码的最后一行
    在正常模式下输入shift + g 即 G。
  • 定位至代码的任意一行
    在正常模式下输入 n + shift + g。
  • 定位至特定一行的开始(即你的光标在该行的其他位置)
    在正常模式下输入 shift + 6 即 ^。
  • 定位至特定一行的末尾
    在正常模式中输入 shift + 4 即 $。
  • 光标的上下左右移动
    上移:k  下移: j   左移: h   右移:  l 。
  • 复制当前行
    输入 yy。
  • 复制n行(从当前行开始算)
    输入 n + yy。
  • 删除当前行
    输入 dd。
  • 删除n行
    输入 n + dd。
  • 粘贴
    输入 p。
  • 粘贴n次
    输入 n + p。
  • 对刚刚的操作进行撤销
    输入 u
  • 如果对撤销后悔
    输入 ctrl + r
  • 大小写字符的转换
    输入 shift + ` 即 ~ 。
  • 替换光标所在字符,或者n个字符
    n + r + 字符
  • 向前删除一个字符或n个字符
    n + shift + x 即 X。
  • 向后删除一个字符或n个字符
    n + x。
  • 查找同名单词(按 n 跳转)
    shift + 3 即#。
  • 以单词为单位向后跳转,支持跳行
    输入 w。
  • 以单词为单位向前跳转,支持跳行
    输入 b。

       这么多指令是不是给你整懵了啊,其实指令还有很多,我只是稍微列举了一些,看完这些指令你可能会问,这些操作我慢慢移动光标去进行就可以了呀,为什么要这些指令呢。是的,确实自己慢慢操作是可以达到同样的效果,但是效率不高,而且作为一名合格的码农,就应该好好的用指令进行操作。

2.3 底行模式

如何进入我们的底行模式呢?
只需要在正常模式中输入 shift + ; 即 :  就可以进入我们的底行模式了。

看光标位置就可以看出不同。
底行模式呢,主要来保存文件和退出vim的。
接下来就让我来介绍一下在底行模式的一些指令吧。

  • 设置行号
    输入 set nu。
  • 取消行号
    输入 set nonu。
  • 保存
    输入 w 可以加一个! 表示强制保存。
  • 退出
    输入 q 同样也可以加一个! 表示强制退出。
    注:保存和退出可以连一起,如 wq 表示保存并退出。
  • 查找关键字符
    输入 /关键字符
  • 跳转行
    输入 # + 行号
  • 同时编辑其他文件
    vs + 文件名

    此时在输入 ctrl +ww 即可跳转文件。

2.4 输入模式

在正常模式中,在键盘上敲击 a,i,o任意一个键即可进入输入模式。

  • 按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
  • 按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
  • 按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。

在输入模式中,就是正常的进行文本编辑了,写代码什么的。

2.5 替换模式

       当我们需要替换很多数据时,且在正常模式下不方便操作的时候,就可以进入我们的替换模式。在正常模式中输入 shift + r 即 R 即可进入替换模式。
       此时所有的输入都会进行字符替换。

2.6 视图模式

       当我们的代码有一部分不用的时候,要把其都注释掉,但是一行行去敲又太麻烦,这个时候我们就可以进入视图模式。
       在正常模式下输入 ctrl + v 即可进入视图模式。

  • 注释操作
    按j/k  上下去选择区域  然后输入 shift + i 后输入 // 再按ESC退出即可。
  • 批量化删除注释操作
    按hjkl  去选择区域  然后输入 d 即可。

2.7 总结

这里用一张图来概括本章所讲。

本章节的指令很多,还需要大家多多练习和消化。

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

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

相关文章

基于springboot+vue+Mysql的幼儿园管理系统

开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:…

【Flask 系统教程 5】视图进阶

类视图 在 Flask 中,除了使用函数视图外,你还可以使用类视图来处理请求。类视图提供了一种更为结构化和面向对象的方式来编写视图函数,使得代码组织更清晰,并且提供了更多的灵活性和可扩展性。 创建类视图 要创建一个类视图&am…

Reactor模型详解

目录 1.概述 2.Single Reactor 3.muduo库的Multiple Reactors模型如下 1.概述 维基百科对Reactor模型的解释 The reactor design pattern is an event handling pattern for handling service requests delivered concurrently to a service handler by one or more inputs.…

办公数据分析利器:Excel与Power Query透视功能

数据分析利器:Excel与Power Query透视功能 Excel透视表和Power Query透视功能是强大的数据分析工具,它们使用户能够从大量数据中提取有意义的信息和趋势,可用于汇总、分析和可视化大量数据。 本文通过示例演示Power Query透视功能的一个小技…

【与 Apollo 共创生态:展望自动驾驶全新未来】

1、引言 历经七年的不懈追求与创新,Apollo开放平台已陆续推出了13个版本,汇聚了来自全球170多个国家与地区的16万名开发者及220多家合作伙伴。随着Apollo开放平台的不断创新与发展,Apollo在2024年4月19日迎来了Apollo开放平台的七周年大会&a…

43 单例模式

目录 1.什么是单例模式 2.什么是设计模式 3.特点 4.饿汉和懒汉 5.峨汉实现单例 6.懒汉实现单例 7.懒汉实现单例(线程安全) 8.STL容器是否线程安全 9.智能指针是否线程安全 10.其他常见的锁 11.读者写者问题 1. 什么是单例模式 单例模式是一种经典的&a…

保研面试408复习 1——操作系统、计网、计组

文章目录 1、操作系统一、操作系统的特点和功能二、中断和系统调用的区别 2、计算机组成原理一、冯诺依曼的三个要点二、MIPS(每秒百万条指令)三、CPU执行时间和CPI 3、计算机网络一、各个层常用协议二、网络协议实验——数据链路层a.网络速率表示b.数据…

机器学习的两种典型任务

机器学习中的典型任务类型可以分为分类任务(Classification)和回归任务(Regression) 分类任务 回归任务 简单的理解,分类任务是对离散值进行预测,根据每个样本的值/特征预测该样本属于类 型A、类型B 还是类…

迎接AI时代:智能科技的社会责任与未来展望

AI智能体的社会角色、伦理挑战与可持续发展路径 引言: 在技术的浪潮中,AI智能体正逐步成为我们生活的一部分。它们在医疗、教育、交通等领域的应用,预示着一个全新的时代即将到来。本文将结合实际案例和数据分析,深入探讨AI智能体…

JavaWeb请求响应概述

目录 一、请求响应流程-简述 二、深入探究 三、DispatcherServlet 四、请求响应流程-详细分析 一、请求响应流程-简述 web应用部署在tomcat服务器中,前端与后端通过http协议进行数据的请求和响应。前端通过http协议向后端发送数据请求,就可以访问到部…

Amazon EKS创建S3数据存储卷

亚马逊相关文档 1、创建适用于 Amazon S3的IAM策略 创建存储桶amazoneks {"Version": "2012-10-17","Statement": [{"Effect": "Allow","Action": "s3express:CreateSession","Resource": &…

docker部署nginx并配置https

1.准备SSL证书: 生成私钥:运行以下命令生成一个私钥文件。 生成证书请求(CSR):运行以下命令生成证书请求文件。 生成自签名证书:使用以下命令生成自签名证书。 openssl genrsa -out example.com.key 2048 …

SpringCloud微服务:Eureka 和 Nacos 注册中心

共同点 都支持服务注册和服务拉取都支持服务提供者心跳方式做健康检测 不同点 Nacos 支持服务端主动检测提供者状态:临时实例采用心跳模式,非临时(永久)实例采用主动检测模式Nacos 临时实例心跳不正常会被剔除,非临时实…

【LLM第二篇】stable diffusion扩散模型、名词解释

最近在整理大模型的相关资料,发现了几个名词,不是很懂,这里整理一下: stable diffusion(SD)模型: 扩散模型(Diffusion model)的一种,主要用于生成高质量的图像&#xf…

Web后端开发中对三层架构解耦之控制反转与依赖注入

内聚与耦合 内聚 比如说我们刚刚书写的员工的实现类 在这里我们仅仅书写的是和员工相关的代码 而与员工无关的代码都没有放到这里 说明内聚程度较高 耦合 以后软件开发要高内聚 低耦合 提高程序灵活性 扩拓展性 分析代码 如何解耦 创建容器 提供一个容器 存储东西 存储E…

计算机毕业设计Python+Spark考研预测系统 考研推荐系统 考研数据分析 考研大数据 大数据毕业设计 大数据毕设

安顺学院本科毕业论文(设计)题目申请表 院别:数学与计算机科学 专业:数据科学与大数据 时间:2022年 5月26日 题 目 情 况 题目名称 基于hive数据仓库的考研信息离线分析系统的设计与实现 学生姓名 杨娣荧 学号 201903144042 …

springmvc下

第二类初始化操作 multipartResolver应用 localeResolver应用 themeResolver应用 handlerMapping应用 handlerAdapter应用 handlerExceptionReslver requestToViewNameTranslator应用 viewResolver应用 flashMapManager应用 dispatcherServlet逻辑处理 processRequest处理web请…

Llama改进之——SwiGLU激活函数

引言 今天介绍LLAMA模型引入的关于激活函数的改进——SwiGLU1,该激活函数取得了不错的效果,得到了广泛地应用。 SwiGLU是GLU的一种变体,其中包含了GLU和Swish激活函数。 GLU GLU(Gated Linear Units,门控线性单元)2引入了两个不同的线性层…

JVM知识总汇(JVM面试题篇5.1)

个人理解,所学有限,若有不当,还请指出 1.JVM是由哪些部分组成,运行流程是什么? JVM为java虚拟机,是java程序的运行环境(其实是java字节码文件的运行环境),能够实现一次编…

【LinuxC语言】信号相关函数——kill、raise、pause与alarm

文章目录 前言一、函数介绍1.1 kill() 函数1.2 raise() 函数1.3 pause() 函数1.4 alarm() 函数 总结 前言 在Linux环境下,信号是一种重要的进程间通信机制,用于处理异步事件和控制进程行为。除了使用signal函数来设置信号处理函数外,还有一些…