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

Linux学习第二天(yum、vim工具)

yum

1、使用yum查看软件包 

yum list | grep lrzsz

 使用这段指令之后可以罗列出可以安装的软件包,这里罗列出的含lrzsz这个词的软件包,如:

lrzsz.x86_64                             0.12.20-36.el7                   @base

这里有几点需要注意:

  • x86_64 后缀表示64位系统的安装包, i686 后缀表示32位系统安装包
  • el7 表示操作系统发行版的版本。el7表示的是centos7/redhat7 
  • 最后一列,base表示的是“软件源”的名称,相当于应用商店

2、怎么安装软件

举个安装lrzsz的例子:

sudo yum install lrzsz

yum可以找到需要下载的软件包,再敲y确定安装,当出现complete时才能说明安装完成 

3、如何卸载软件 

举个卸载lrzsz的例子:

sudo yum remove lrzsz

vim

 1、vim的基本概念

vim有三种模式:命令模式、插入排序、底行模式

命令模式:控制屏幕光标的移动,字符,字或者行的删除,移动复制某区段及进入插入模式下,或者到底行模式下

插入模式:只有在插入模式下,才可以进行文字的输入,按【ESC】才可以返回到命令行模式

底行模式:文件保存或者退出,也可以进行文件替换,找字符串,列出行号等操作。在命令模式下,按shift+;可以进入此模式

2、vim的基本操作

在终端中输入vim + 文件名称就可以进入vim的编辑界面,如:

vim test.c

 如果需要从命令模式进入到插入模式,可以输入:a或者i或者o,反之,如果要从插入模式进入到命令模式,按一下ESC就可以了

命令模式切换到底行模式  输入shift+;就可以了

退出vim及保存文件,需要进入底行模式,输入命令:

:w  (保存当前文件)

:wq  (保存并且退出vim)

:q! (不存储直接退出vim)

3、vim命令模式下的命令集

进入插入模式:

按 i 进入到插入模式,按 i 进入到插入模式后是从光标当前位置开始输入文件

按 a 进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字

按 o 进入插入模式后,是插入新的一行,从行首开始输入文字

 移动光标:

vim可以直接用键盘上的光标上下左右移动,但正规的vim是用小写的英文字母h、j、k、l分别控制光标左、下、上、右移动一格

按G:移动到文章的最后

按$:移动到光标所在行的行尾

按^:移动到光标所在行的行首

按w:光标跳到下个字的开头

按e:光标跳到下个字的字尾

按b:光标回到上个字的开头

按#I:光标移动到该行的第#个位置,如:5I、56I

按gg:进入到文本的开始

按shift+g进入到文本末端

按ctrl+b屏幕往后移动一页

按ctrl+f屏幕往前移动一页

按ctrl+u屏幕往后移动半页

按ctrl+d屏幕往前移动半页

删除文字

按x删除光标所在位置的一个字符

按#x,比如6x表示删除光标所在位置的后面(包括自己在内的)6个字符

按X,大写的X,表示删除光标所在位置的前面一个字符

按#X,比如20X表示删除光标位置前面的20个字符

按dd,删除光标所在行

按#dd,从光标所在行开始删除#行

 复制

按ym将光标所在之处到字尾的字符复制到缓冲区中

按#ym复制#个字到缓冲区

按yy复制光标所在区到缓冲区

按#yy,比如6yy表示拷贝从光标所在行往下数的六行文字

按p将缓冲区内的字符贴到光标所在位置

 替换

按r替换光标所在处的字符

按R替换光标所到之处的字符,直到按下ESC键为止

 撤销上一次的操作

按u可以回到上一个操作,按多次u可以执行多次回复

ctrl+e撤销的恢复

 更改

按cwb更改光标所在处的字到字尾处

按c#w 比如c3w表示更改三个字符

跳到指定的行 

ctrl+g列出光标所在行的行号

#G 表示移动光标至文章的第十五行行首

4、vim底行模式下的命令集 

set nu输入后会列出文件中每一行的行号

#  输入一个数字比如9表示会跳到文章的第9行

/+字符  先按/键,再输入想查找的字符,如果第一次找到的关键字不是我们需要的,可以一直按n往后寻找直到找到想要的为止

?+字符 先按?键,再输入想要查找的字符,如果第一次找的关键字不是想要的,可以一直按n会往前找到我们需要的关键字为止

w 在:后输入w就可以将文件保存下来

q 在:后输入q就可以将退出文件

wq 在:后输入wq可以保存文件并且退出

相关文章:

  • 自定义焊件轮廓库的方法
  • FFMPEG 推流至 NGINX-RTMP 服务
  • React PureComponent 和 React.memo()区别
  • 各平台,各语言基础数据类型占用字节比较
  • 数字人的未来:数字人对话系统 Linly-Talker + 克隆语音 GPT-SoVITS
  • Centos7下安装ruby2.7.8环境、WPScan的安装及使用介绍
  • 项目登录方案选型
  • 10分钟快速开始SkyWalking结合Springboot项目
  • 在两台CentOS 7服务器(IP地址分别为192.168.8.171和192.168.8.183)上部署MinIO集群。
  • nginx高级配置详解
  • Spring6学习技术|事务
  • 二. 系统性能评价(2分)
  • (AtCoder Beginner Contest 340) -- F - S = 1 -- 题解
  • 七大查找算法详解并附代码实现
  • Python爬虫-付费代理推荐和使用
  • 【vuex入门系列02】mutation接收单个参数和多个参数
  • JavaScript HTML DOM
  • windows下如何用phpstorm同步测试服务器
  • XML已死 ?
  • 给github项目添加CI badge
  • 让你的分享飞起来——极光推出社会化分享组件
  • 用jQuery怎么做到前后端分离
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • 仓管云——企业云erp功能有哪些?
  • # 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告
  • #前后端分离# 头条发布系统
  • #我与Java虚拟机的故事#连载14:挑战高薪面试必看
  • $.ajax,axios,fetch三种ajax请求的区别
  • (39)STM32——FLASH闪存
  • (Java数据结构)ArrayList
  • (Redis使用系列) SpringBoot中Redis的RedisConfig 二
  • (vue)el-checkbox 实现展示区分 label 和 value(展示值与选中获取值需不同)
  • (附源码)springboot码头作业管理系统 毕业设计 341654
  • (附源码)springboot社区居家养老互助服务管理平台 毕业设计 062027
  • (三)Pytorch快速搭建卷积神经网络模型实现手写数字识别(代码+详细注解)
  • (数据结构)顺序表的定义
  • (学习日记)2024.02.29:UCOSIII第二节
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • (转)shell调试方法
  • (转)一些感悟
  • (转载)微软数据挖掘算法:Microsoft 时序算法(5)
  • .jks文件(JAVA KeyStore)
  • .Net core 6.0 升8.0
  • .NET处理HTTP请求
  • .net打印*三角形
  • .NET框架设计—常被忽视的C#设计技巧
  • .NET中winform传递参数至Url并获得返回值或文件
  • ::before和::after 常见的用法
  • ??如何把JavaScript脚本中的参数传到java代码段中
  • @NoArgsConstructor和@AllArgsConstructor,@Builder
  • @Validated和@Valid校验参数区别
  • [ element-ui:table ] 设置table中某些行数据禁止被选中,通过selectable 定义方法解决
  • [<死锁专题>]
  • [20190113]四校联考
  • [android] 看博客学习hashCode()和equals()