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

Linux软件管理包-yum和基础开发工具-vim

本章分享软件管理包yum和Linux编辑器-vim,学习基础的开发工具才能在Linux中进行开发,yum跟我们手机上的应用商城一样,我们可以从里面下载软件。vim也是文本编辑器,是一个多模式的编辑器。

目录

软件管理包--yum

rz和sz

rz

sz 

卸载软件

Linux开发工具--vim

命令模式

插入模式

底行模式

vim基础操作

vim正常模式命令集

vim底行模式命令集 

vim的配置 


软件管理包--yum

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

rz和sz

这两个软件可以在Linux和windows文件互传,在Linux下写的文件可以传输到windows,同样windows中的文件可以传输到Linux。

在Linux中我们也不知道需要下载什么软件,只能看需求,当我们需要某个功能时,就去下载具有相关功能的软件。

查看rzsz软件包:yum list | grep lrzsz

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

有了软件包就可以下载该软件:

由于小编之前下载好了,就显示已经下载了,并且需要root用户,如果是普通用户就需要提权来进行下载,通过查看软件包后root用户使用yum install -y +通过查看软件包后的名称 来下载该软件,普通用户使用sudo yum install -y +通过查看软件包后的名称

rz

从windows中传输文件到Linux下,接收文件。

rz命令的常用选项包括:

  • -b:以二进制方式传输文件。

  • -e:对所有控制字符进行转义,这可以确保文件传输的正确性。

  • -E:如果服务器上已存在同名文件,则重命名新上传的文件。

  • -y:如果存在同名文件,则替换该文件。

  • -Z:使用ZMODEM协议进行文件传输。

sz 

输入sz会弹出以下窗口:将Linux服务器中的文件传输到本地机器,发送文件。

卸载软件

命令:yum remove + 软件名称

如果是普通用户需要提权使用:sudo yum remove来卸载软件。

Linux开发工具--vim

编辑器vim有很多模式,但是小白一般都是只需要这三种模式就行:命令模式、插入模式、底行模式。

命令模式

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode,使用vim进入文本一开始就是命令模式。

插入模式

只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是后面用的最频繁的编辑模式。

底行模式

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

vim基础操作

在命令模式下有这几个常用的命令:

定位光标第一行:gg

定位光标到末尾:shift+g(G)

定位光标到任意行:n+shift+g(n+G)

定位光标到当前行的结尾:shift+$

定位光标到当前行开头:shift+^

光标按单词在行内移动:w,b

上下左右移动:j(上),k(下),h(左),l(右)

(n)yy:复制光标所在行(n行)

(n)dd:删除、剪切

(n)p:粘贴(n行)到光标所在的下一行

u:撤销上一操作

Ctrl+r:撤销上一次的撤销

shift+~:大小写转换

(n)r:对光标(n)个字符进行替换

(n)x:对光标之后的字符进行删除

那么如何进入插入模式呢?在命令模式输入i就可以进入插入模式,在插入模式中按下Esc就能退出插入模式,回到命令模式,输入shift+; = :就可以进入底行模式,在底行模式输入wq是保存并退出,w是保存,q是退出。

vim正常模式命令集

插入模式
按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
从插入模式切换为命令模式
按「ESC」键。
移动光标
vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格
按「G」:移动到文章的最后
按「 $ 」:移动到光标所在行的“行尾”
按「^」:移动到光标所在行的“行首”
按「w」:光标跳到下个字的开头
按「e」:光标跳到下个字的字尾
按「b」:光标回到上个字的开头
按「#l」:光标移到该行的第#个位置,如:5l,56l
按[gg]:进入到文本开始
按[shift+g]:进入文本末端
按「ctrl」+「b」:屏幕往“后”移动一页
按「ctrl」+「f」:屏幕往“前”移动一页
按「ctrl」+「u」:屏幕往“后”移动半页
按「ctrl」+「d」:屏幕往“前”移动半页
删除文字
「x」:每按一次,删除光标所在位置的一个字符
「#x」:例如,「6x」表示删除光标所在位置的“后面(包含自己在内)”6个字符
「X」:大写的X,每按一次,删除光标所在位置的“前面”一个字符
「#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符
「dd」:删除光标所在行
「#dd」:从光标所在行开始删除#行
复制
「yw」:将光标所在之处到字尾的字符复制到缓冲区中。
「#yw」:复制#个字到缓冲区
「yy」:复制光标所在行到缓冲区。
「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。
「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。
替换
「r」:替换光标所在处的字符。
「R」:替换光标所到之处的字符,直到按下「ESC」键为止。
撤销上一次操作
「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次“u”可以执行多次回复。
「ctrl + r」: 撤销的恢复
更改
「cw」:更改光标所在处的字到字尾处
「c#w」:例如,「c3w」表示更改3个字
跳至指定的行
「ctrl」+「g」列出光标所在行的行号。
「#G」:例如,「15G」,表示移动光标至文章的第15行行首。

vim底行模式命令集 

在使用末行模式之前,请记住先按「ESC」键确定您已经处于正常模式,再按「:」冒号即可进入末行模式。
列出行号
「set nu」: 输入「set nu」后,会在文件中的每一行前面列出行号。
跳到文件中的某一行
「#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行。
查找字符
「/关键字」: 先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往后寻找到您要的关键字为止。
「?关键字」:先按「?」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往前寻找到您要的关键字为止。
保存文件
「w」: 在冒号输入字母「w」就可以将文件保存起来
离开vim
「q」:按「q」就是退出,如果无法离开vim,可以在「q」后跟一个「!」强制离开vim。
「wq」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。

在这篇文章中只讲解了三种模式,但是一共有十二种模式:正常,插入,底行,打开,关闭,查看,查询,插入,删除,替换,撤销,复制 。

vim的配置 

我们需要再文件中写代码,是否可以和在VS2019编译器有相似的功能呢?答案是当然可以,但是需要自己配置。

不想自己配置的可以看这里哦:https://gitee.com/HGtz2222/VimForCpp

不推荐在root用户下安装,可以自己建一个普通用户安装。 安装好后重新启动就有了和VS2019相似的功能,在文本里敲代码也更加舒服了。

http://www.lryc.cn/news/571762.html

相关文章:

  • 6.18 redis面试题 日志 缓存淘汰过期删除 集群
  • 【Leetcode】每日一题 —— No.2966
  • milvus和attu的搭建
  • 八种常见的神经网络介绍
  • Ubuntu 使用kubeadm部署k8s系统组件反复重启的问题
  • LVS +Keepalived高可用群集
  • 物联网控制技术期末复习 知识点总结 第六章 物联网控制算法(PID算法 PWM算法)
  • vscode连接不上服务器问题修复
  • 如何运用 AI 工具运营海外社媒账号
  • 借助AI学习编程,走向架构师之路
  • class对象【C#】2025复习
  • 排序算法专题
  • 【文本大模型】从0开始 - 本地部署一个ChatGLM对话模型(基于WebUI)
  • MySQL 索引和查询优化
  • linux虚拟机yum命令报错解决方案
  • 学习大模型---需要掌握的数学知识
  • 【Python编程】__all__ = [] 的作用
  • PROFIBUS转EtherCAT网关:市政再生水厂的智能连接枢纽
  • 二分查找算法题
  • 鸿蒙Next仓颉语言开发实战教程:懒加载
  • Neo4j常见语句-delete
  • 华为云Flexus+DeepSeek征文|一键部署华为云CCE容器高可用Dify平台的实践经验与思考
  • 部署并了解什么是openstack
  • 结合 STM32CubeMX 使用 FreeRTOS 实时操作系统
  • pyqt 简单条码系统
  • java充电桩源码获取,云快充源码、OCPP、互联互通协议源码实现SpringCloud+vue
  • 对抗性提示:进阶守护大语言模型
  • 使用 Elasticsearch 提升 Copilot 能力
  • Arduino入门教程:10、屏幕显示
  • aws各类服务器编号