【Linux】yum和vim的使用

news2024/11/30 6:38:09

文章目录

  • 一、Linux软件包管理器-yum
    • 1. 概念
    • 2. 安装软件
    • 3. 卸载软件
    • 4. 查看软件包
    • 5. 更新软件包
  • 二、Linux编辑器-vim
    • 1. 基本概念
    • 2. 基本操作
    • 3. 正常模式命令集
    • 4. 末行模式命令集
  • 三、总结


一、Linux软件包管理器-yum

1. 概念

  • 什么是软件包?
    在Linux下安装软件, 一个常用方法是下载程序的源代码, 并进行编译, 得到可执行程序。但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包 (可以理解成windows上的安装程序) 放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装。
    软件包和软件包管理器, 就好比 “App” 和 “应用商店” 这样的关系。
    yum (Yellow dog Updater, Modified) 是Linux下非常常用的一种包管理器。主要应用在Fedora, RedHat, Centos等发行版上

2. 安装软件

语法格式:yum [参数] 软件包

注:
关于 yum 的所有操作必须保证主机(虚拟机)网络畅通
可以通过 ping 命令验证

ping www.baidu.com

install
yum 会自动找到哪些软件包需要下载, 这时候敲 “y” 确认安装,也可以带上-y对所有的提问都回答“yes” ,出现 “complete” 字样, 说明安装完成

yum install -y lrzsz
  • rz和sz命令

rz:上传文件到服务器
sz:下载文件到本地

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

安装完毕之后可以通过拖拽的方式将文件上传过去

sz+ 文件名 ,然后在弹窗中选择保存路径

示例:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

注意事项:

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

3. 卸载软件

一条命令:

yum remove lrzsz

4. 查看软件包

通过 yum list 命令可以列出当前一共有哪些软件包。 由于包的数目可能非常之多, 这里我们需要使用 grep 命令只筛选出我们关注的包
例如:

yum list | grep lrzsz

在这里插入图片描述

注:

  • 软件包名称: 主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构
  • “x86_64” 后缀表示64位系统的安装包, “i686” 后缀表示32位系统安装包. 选择包时要和系统匹配
  • “el7” 表示操作系统发行版的版本. “el7” 表示的是 centos7/redhat7.“el6” 表示 centos6/redhat6
  • 最后一列, os 表示的是 “软件源” 的名称, 类似于 “小米应用商店”, “华为应用商店” 这样的概念

5. 更新软件包

yum update lrzsz

二、Linux编辑器-vim

vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法高亮,可视化操作等。不仅可以在终端运行,也可以运行于xwindow、 macos、 windows

1. 基本概念

本文介绍vim的三种模式 (实际上有多种模式,目前掌握这3种即可), 分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode)各模式的功能区别:

  • 正常/普通/命令模式(Normal mode)
    控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode

  • 插入模式(Insert mode)
    只有在Insert mode下,才可以做文字输入,按Esc键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。

  • 底行模式(last line mode)
    文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入

:help vim-modes

z

2. 基本操作

  • 进入vim
    在输入vim及文件名称后,就进入vim全屏幕编辑画面
vim test.c

进入vim之后,是处于[正常模式],你要切换到[插入模式]才能够输入文字

  • [正常模式] 切换至 [插入模式]
    输入a i o

  • [插入模式] 切换至 [正常模式]
    目前处于[插入模式],就只能一直输入文字,如果发现输错了字,想用光标键往回移动,将该字删除,可以先按一下Esc键转到[正常模式]再删除文字。当然,也可以直接删除。

  • [正常模式] 切换至 [末行模式]
    shift +;, 其实就是输入:

  • 退出vim及保存文件
    在 [正常模式] 下,按一下: 冒号键进入「Last line mode」,例如:
    : w (保存当前文件)
    :wq ( 保存并退出vim)
    : q! (不保存强制退出vim)

3. 正常模式命令集

  • 插入模式

i切换进入插入模式「insert mode」,按i进入插入模式后是从光标当前位置开始输入文件

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

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

  • 从插入模式切换为命令模式
    Esc键。
  • 移动光标

vim可以直接用键盘上的方向键来上下左右移动,但正规的vim是用小写英文字母hjkl,分别控制光标移一格

命令作用
G(Shift+g)移动到文本的最后
$ (Shift + 4)移动到光标所在行的“行尾”
^ (Shift + 6)移动到光标所在行的“行首”
w光标跳到下个字的开头
e光标跳到下个字的字尾
b光标回到上个字的开头
#|光标移到该行的第#个位置,如3|,5|
gg移动到文本开始
Ctrl + b屏幕往“后”移动一页
Ctrl + f屏幕往“前”移动一页
Ctrl + u屏幕往“后”移动半页
Ctrl + d屏幕往“前”移动半页
  • 删除文字
命令作用
x每按一次,删除光标所在位置的一个字符
#x删除光标所在位置的“后面“(包含自己在内)#个字符
大写X每按一次,删除光标所在位置的“前面”一个字符
#X表示删除光标所在位置的“前面”#个字符
dd删除光标所在行
#dd从光标所在行开始删除#行
  • 复制
命令作用
yw将光标所在之处到字尾的字符复制到缓冲区中(这里缓冲区的作用类似于剪贴板)
#yw复制#个字到缓冲区
yy复制光标所在行到缓冲区
#yy表示拷贝从光标所在的该行“往下数”#行文字
p将缓冲区内的字符粘贴到光标所在位置(所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能)
  • 替换
    r:替换光标所在处的字符(按 r 后再键入你想输入的字符)
    R:替换光标所到之处的字符,直到按下「Esc」键为止

  • 撤销
    u:如果您误执行一个命令,可以马上按下 u ,回到上一个操作。按多次“u”可以执行多次撤销
    ctrl + r: 撤销恢复

  • 更改
    cw:更改光标所处的字到字尾处
    c#w: c3w 表示向后更改3个字

  • 跳至指定的行
    ctrl + g:列出光标所在行的行号
    #G:5G,表示移动光标至文本的第5行行首

4. 末行模式命令集

在使用末行模式之前,需要先按「Esc」键确定处于正常模式,再按:冒号即可进入末行模式。

  • 列出行号

set nu:
输入set nu后,会在文件中的每一行前面列出行号

  • 跳到文件中的某一行

# : #号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了

  • 查找字符

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

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

问题:
/ 和 ?查找有和区别?操作实验一下
前者找到第一个停下,后者找到最后一个停下

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

三、总结

  • vim的三种模式:
  1. 正常模式
  2. 插入模式
  3. 底行模式
  • vim的常用操作
    打开,关闭,查看,查询,插入,删除,替换,撤销,复制等等

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

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

相关文章

es实操笔记

Elasticsearch提供了一个非常全面和强大的REST API,可以使用它与集群进行交互。咱们来玩一下。 环境搭建 搭建好es和kinaba,可以访问通过ip:9200查看es的信息,ip:5601打开kinaba。 集群相关 健康检查 curl localhost:9200/_cat/health?v…

Linux 网络之netlink 简介

文章目录前言一、Netlink用户态应用的使用1.1 Netlink socket1.2 Netlink宏操作二、Netlink对应数据结构2.1 struct sockaddr_nl2.2 struct nlmsghdr2.3 struct msghdr三、用户层实例参考资料前言 The Netlink socket family 是一个 Linux 内核接口,用于内核和用户…

网课查题接口

网课查题接口 本平台优点:免费查题接口搭建 多题库查题、独立后台、响应速度快、全网平台可查、功能最全! 1.想要给自己的公众号获得查题接口,只需要两步! 2.题库:题库后台http://daili.jueguangzhe.cn/ 题库后台&am…

[前端基础] CSS3 篇

CSS3 使用了层叠样式表技术,可以对网页布局、字体、颜色、背景灯效果做出控制。CSS3 作为 CSS 的进阶版,拆分和增加了盒子模型、列表模块、语言模块 、背景边框 、文字特效 、多栏布局等等。CSS3 的改变有很多,增加了文字特效,丰富…

C#基础知识

文章目录简介隐式显式转换ifswitch循环随机数方法do whilestatic递归数组foreachvar推断类型,父类二维数组,交错数组当方法参数类型确定,个数不确定时数据类型类型分类快捷方式函数参数:引用、输出参数装箱,拆箱string储存地址枚举…

Netty入门——组件(Channel)二

目录一、channel的主要作用二、EventLoop处理io任务代码示例2.1、服务端代码示例2.2、客户端代码示例2.3、服务端和客户端查看控制台输出结果三、CloseFuture关闭问题代码示例3.1、服务端代码示例3.2、客户端代码示例3.3、服务端和客户端查看控制台输出结果3.4、CloseFuture关闭…

【C++ STL】-- deque与vector相比的优势与劣势

目录 deque容器 与stack相比deque的优缺点: deque的迭代器 deque的成员函数 deque容器 deque的相关文档 deque与vector十分的相识。vector是单向开口的连续线性空间(单向扩容),deque则是一种双向开口的连续线性空间&#xff…

GIC/ITS代码分析(9)中断应用实例之IPI中断

PPI中断为外设私有中断,在ARM64上arch_timer为PPI中断。这里以arch_timer为例(代码位置drivers/clocksource/arm_arch_timer.c),作应用实例讲解。 先对ARM64通用定时器作简要介绍。通用定时器为Arm core提供标准定时器。通用定时器…

VSCode下载安装与使用教程

目录1. 打开官网进行下载安装2. 下载3. 安装4. 使用4.1 python extensions4.2 建立 python 工作区4.3 运行python代码的 3 种方法方法一:点击按钮方法二:右键菜单方法三:交互式解释器5. debug参考资料VSCode是一款免费开源的现代化轻量级代码…

【C++修炼之路】8. string类详解

每一个不曾起舞的日子都是对生命的辜负 C之string类本节目标1. string类概览1.1 string的由来1.2 string函数列表2.string常用接口1. 初始化2. string::npos3. c_str()4. 获取长度(length、size)5. 容量(size、capacity)6. 插入(insert)7. 替…

牛客网-《刷C语言百题》第三期

✅作者简介:嵌入式入坑者,与大家一起加油,希望文章能够帮助各位!!!! 📃个人主页:rivencode的个人主页 🔥系列专栏:《C语言入门必刷百题》 &#x…

【HTML5期末大作业】制作一个简单HTML我的班级网页(HTML+CSS+JS)

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

微信小程序 |从零实现酷炫纸质翻页效果

📌个人主页:个人主页 ​🧀 推荐专栏:小程序开发成神之路 --【这是一个为想要入门和进阶小程序开发专门开启的精品专栏!从个人到商业的全套开发教程,实打实的干货分享,确定不来看看? …

保姆级透明背景动画导出 —— json格式(Mac系统)

日常能想到的小动画基本就是使用ps导出GIF动画/AE通过插件直接导出GIF,方便快捷;但最近工作中遇到了关于透明背景导出GIF动画的问题:导出的GIF动画有白边,有锯齿感。 网上找了一大堆教程,主要原因出在GIF格式本身的问…

黑马程序员Java实战项目--- ATM系统

项目介绍与功能演示 黑马银行ATM系统技术选型分析: 学习本项目,你将至少得到如下收获: 1、优秀的面向对象编程能力。 2、 清晰、缜密的业务、数据分析能力。 3、熟练使用程序流程技术来控制计算机完成自己的想法。 4、形成良好的编码习惯…

【面试题】移除数组删除重复项合并数组

1️⃣ 原地移除数组中所有的元素val 【OJ链接】 2️⃣ 删除排序数组中的重复项 【OJ链接】 3️⃣ 合并两个有序数组 【OJ链接】 1️⃣ 原地移除数组中所有的元素val 题目要求是要在数组中,把指定的数字全部去除,题目中也是强调了空间复杂度要求为O(1)&am…

项目经理要“谋定而后动,知止而有得,万事皆有法,不可乱也”

出自《大学》,“谋定而后动,知止而有得”的含义为谋划准确周到而后行动,知道目的地(合适的时机收手)才能够有所收获。 谋定而后动是告诉我们做任何事一定要进行谋划部署,做好准备,我们才能开始行…

数据结构作业:时间复杂度和二叉树

计算时间复杂度&#xff1a; int x0,i,j; 1 for(i1;i<n;i) n { for(j1;j<2*i;j) 2(n-1) { x; 2(n-1)*n } } 2(n-1)*n2n^2-2n 修改后的运行次数函数中&#xff0c;只保留最高阶项。 所以时间复杂度为 &#xff1a;…

老生常谈的商城系统(Asp.Net+uniapp)

真正的大师,永远都怀着一颗学徒的心&#xff01; 最近几天合肥是真热 这时候就应该宅在家里 吃着西瓜 啃着鸭脖 喝着啤酒 刷着剧 想想也太美好了吧 哈哈 我得醒醒 写完这篇推荐 吃吃喝喝去了 一、项目简介 今天推荐一款商城系统&#xff0c;虽然比较老生常谈了&#xff0…

【项目】若依框架如何实现批量导入,并解析出表中内容返回给前端? - poi依赖

文章目录实现效果&#xff1a;具体实现步骤&#xff1a;扩展实例内容&#xff1a;poi工具包ExcelHandlerAdapter接口ExcelUtil.java代码controllerserviceserviceImplmapper.javamapper.xmlTnProductProperty.java实现效果&#xff1a; 点击“导入excl”按钮 --> 弹出“文件…