【linux】yum 和 vim

news/2024/5/3 21:58:42/文章来源:https://blog.csdn.net/2302_76561054/article/details/137196946

yum 和 vim

  • 1. Linux 软件包管理器 yum
    • 1.1 什么是软件包
    • 1.2 查看软件包
    • 1.3 如何安装软件
    • 1.4 如何卸载软件
    • 1.5 关于 rzsz
  • 2. Linux编辑器-vim使用
    • 2.1 vim的基本概念
    • 2.2 vim的基本操作
    • 2.3 vim命令模式命令集
    • 2.4 vim底行模式命令集
    • 2.5 vim操作总结
      • 补充:vim下批量化注释和批量化去注释的方法
  • 3. 设置让普通用户进行sudo提权步骤
  • 4. 简单vim配置

1. Linux 软件包管理器 yum

1.1 什么是软件包

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

1.2 查看软件包

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

yum list | grep lrzsz

在这里插入图片描述
注意事项:

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

1.3 如何安装软件

[sudo/root身份] yum install [-y] xxx

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

注意事项:

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

例如:在Linux下安装一个小火车sl指令

在这里插入图片描述
运行一下:
在这里插入图片描述

1.4 如何卸载软件

[sudo/root身份] yum remove [-y] xxx

补充:
centos中凡是能够直接被用户下载的软件其实已经是一些非常稳定的软件了,但centos每年都会有一些新增的软件,它们又没有被测试过,稳定性还存疑,所以不能直接更新到yum软件包集合里,所以yum会提供两个软件源,一个是base(基本软件源,很稳定),另一个是epel(扩展软件源,稳定性尚未可知)。当epel里的软件经过一段时间使用测试后,稳定性已有保障,就会被更新到base软件源中,使base软件源得以扩充。

一般来说系统都会有一个基本软件源,但扩展软件源需要自行安装,安装指令为:

yum -y install -y epel-release

在这里插入图片描述
我已经安装过了,所以他会提示我已安装到最新。(而且上面安装可能需要root权限)

可通过ls /etc/yum.repos.d/指令查看当前系统的软件源:
在这里插入图片描述

也可以通过vim /etc/yum.repos.d/CentOS-Base.repo指令查看软件源内置的软件下载地址链接:
在这里插入图片描述

1.5 关于 rzsz

这个工具用于 windows 机器和远端的 Linux 机器通过 XShell 传输文件.
安装完毕之后可以通过拖拽的方式将文件上传过去.

需要先安装lrzsz包:

 sudo yum install lrzsz

rzsz包括以下两个命令:

  1. rz这是一个接收(receive)命令,允许用户从本地Windows或其他支持ZModem协议的系统通过SSH或Telnet会话上传文件到Linux服务器。当你在终端中运行rz命令时,会在本地系统打开一个文件选择对话框,你可以从中选择要上传的文件,然后这些文件会被按照ZModem协议高效地传输到Linux服务器。
  2. sz这是一个发送(send)命令,作用与rz相反,它允许用户从Linux服务器上下载文件到本地支持ZModem协议的系统。运行sz filename命令将会把服务器上的指定文件传输到本地机器。

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

ping www.baidu.com

2. Linux编辑器-vim使用

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

2.1 vim的基本概念

我们主要介绍vim的三种模式,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

  • 正常/普通/命令模式(Normal mode)

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

  • 插入模式(Insert mode)

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

  • 末行/底行模式(last line mode)

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

2.2 vim的基本操作

  • [命令模式]切换至[插入模式]
  • 输入a
  • 输入i
  • 输入o
  • [插入模式]切换至[命令模式]
  • 按一下「ESC」键转到[命令模式]。
  • [命令模式]切换至[底行模式]
  • 「shift + ;」, 其实就是输入「:」
  • 退出vim及保存文件,在[命令模式]下,按一下「:」冒号键进入底行模式,例如:
  • : w (保存当前文件)
  • : wq (输入「wq」,存盘并退出vim)
  • : q! (输入q!,不存盘强制退出vim)

2.3 vim命令模式命令集

  • 「i」切换进入插入模式「insert mode」,按i进入插入模式后是从光标当前位置开始输入文件;
  • 「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
  • 「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
  • 「ESC」键:从插入模式切换为命令模式
  • n+ yy:复制当前行 —— n: 连续复制n行
  • n+p:粘贴,当前光标的下一行 —— n: 表示把指定内容粘贴n次
  • u:撤销
  • ctrl+r: 对历史撤销,进行撤销(反撤销)
  • n + dd:剪切/删除指定行、连续的多行
  • shift+4= $:将光标定位到当前行的结尾
  • shift+ 6=^:将光标定位到当前行的开始
  • gg:将光标定位到整个文本的最开头
  • shift+g = G:将光标定位到整个文本的最后一行
  • n+ shift +g=nG:将光标定位到整个文本任意一行
  • h,j,k,l:左,下,上,右,也可以带n
  • w:按照单词为单位进行光标后移
  • b:按照单词为单位进行光标前移
  • ~:对文本内容进行大小写快速切换
  • n+x:删除光标后续的一个字符,可以一次删除n个 —— 一行内
  • n + shift+x=X:删除光标之前的一个字符,可以一次删除n个 —— 一行内
  • n+r:对光标指定的位置, 进行一个字符的替换,可以一次替换多个
  • shift+r=R: 进入替换模式,直接进行文本替换
  • shift+zz=ZZ:保存并退出

注意:上述命令集当中的n表示具体数字

2.4 vim底行模式命令集

在使用末行模式之前,请记住先按「ESC」键确定您已经处于命令模式,再按「:」冒号即可进入底行模式。

  • w:保存
  • q:退出
  • wq:保存并退出
  • !:强制
  • q!:不保存退出
  • set nu:打开行号,
  • nonu:去掉行号
  • /关键字:做搜索,搜索关键字
  • !command:不退出vim,可以进行shell命令的执行,常用函数查看
  • vs filename:分屏,多文件操作

2.5 vim操作总结

在这里插入图片描述

补充:vim下批量化注释和批量化去注释的方法

  • 批量化注释:

在这里插入图片描述

  • 批量化去注释:

在这里插入图片描述

3. 设置让普通用户进行sudo提权步骤

sudo即无需切换用户身份,允许用户以root权限执行命令。在使用前需提前配置。

提权步骤:

在这里插入图片描述

4. 简单vim配置

配置文件的位置:

  • 在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。
  • 而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc”。例如,/root目录下,通常已经存在一个.vimrc文件,如果不存在,则创建之。(vim在执行时会读取这个.vimrc的隐藏文件,一些vim的基本配置就可以写入这个.vimrc文件中,vim执行时自动读取)
  • 切换用户成为自己进入自己的主工作目录,执行 cd ~
  • 打开自己目录下的.vimrc文件,执行 vim .vimrc写入配置

例如:向vim中写入打印行号的配置:
在这里插入图片描述
除了打印行号还可以去百度上搜索一些更好用的vim配置,写入方法都是一样的。

下面再推荐一种简单的一键配置方法:
在这里插入图片描述

参考资料:
Vim 从入门到精通

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

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IOS虚拟键盘弹出后,弹窗的按钮点击不起作用,不会触发click事件

背景 讨论区项目的回复框,使用的是Popup和TextArea做,布局如下图,希望键盘弹出时候,回复框可以紧贴键盘,这点实现起来比较简单,监听resize事件,动态修改popup的这题内容的top值即可&#xff0c…

二叉数应用——最优二叉树(Huffman树)、贪心算法—— Huffman编码

1、外部带权外部路径长度、Huffman树 从图中可以看出,深度越浅的叶子结点权重越大,深度越深的叶子结点权重越小的话,得出的带权外部路径长度越小。 Huffman树就是使得外部带权路径最小的二叉树 2、如何构造Huffman树 (1&#xf…

SpringBoot中的Redis的简单使用

在Spring Boot项目中使用Redis作为缓存、会话存储或分布式锁等组件,可以简化开发流程并充分利用Redis的高性能特性。以下是使用Spring Boot整合Redis的详细步骤: 1. 环境准备 确保开发环境中已安装: Java:用于编写和运行Spring…

HTML5学习记录

简介 超文本标记语言&#xff08;HyperText Markup Language&#xff0c;简称HTML&#xff09;&#xff0c;是一种用于创建网页的标准标记语言。 编辑器 下载传送门https://code.visualstudio.com/ 下载编辑器插件 标题 标题通过 <h1> - <h6> 标签进行定义。 …

xss.pwnfunction-Ok,Boomer

调用0k会直接调用tostring方法获得href里的内容而setTimeout第一个参数恰巧可以接收字符串 但是href必须是协议&#xff1a;主机名 这里tel是dompurify框架的白名单 <a idok hreftel:alert(1337)>

xss跨站脚本攻击笔记

1 XSS跨站脚本攻击 1.1 xss跨站脚本攻击介绍 跨站脚本攻击英文全称为(Cross site Script)缩写为CSS&#xff0c;但是为了和层叠样式表(CascadingStyle Sheet)CSS区分开来&#xff0c;所以在安全领域跨站脚本攻击叫做XSS 1.2 xss跨战脚本攻击分类 第一种类型:反射型XSS 反射…

Node.js cnpm的安装

百度搜索 cnpm,进入npmmirror 镜像站https://npmmirror.com/ cmd窗口输入 npm install -g cnpm --registryhttps://registry.npmmirror.com

中高级前端需要掌握哪些Vue底层原理

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

架构设计参考项目系列主题:新零售SaaS架构:客户管理系统架构设计

什么是客户管理系统? 客户管理系统,也称为CRM(Customer Relationship Management),主要目标是建立、发展和维护好客户关系。 CRM系统围绕客户全生命周期的管理,吸引和留存客户,实现缩短销售周期、降低销售成本、增加销售收入的目的,从而提高企业的盈利能力和竞争力。 …

Qt之信号和槽的机制

前言 在 C 中&#xff0c;对象与对象之间产生联系要通过调用成员函数的方式。但是在 Qt中&#xff0c;Qt提供了一种新的对象间的通信方式&#xff0c;即信号和槽机制。在GUI编程中&#xff0c;通常希望一个窗口部件的一个状态的变化会被另一个窗口部件知道&#xff0c;为…

怎样关闭浏览器文件下载安全病毒中检测功能

怎样关闭浏览器文件下载安全病毒中检测功能 有时候需要通过浏览下载一些特殊文件&#xff0c;浏览器会提示有病毒&#xff0c;终止下载并且自动删除文件。 以为是浏览器的问题&#xff0c;用 chrome、Edge、firefox 三种浏览器下载均失败。 尝试关闭了所有浏览器安全防护也不行…

防止邮箱发信泄露服务器IP教程

使用QQ邮箱,网易邮箱,189邮箱,新浪邮箱,139邮箱可能会泄露自己的服务器IP。 泄露原理&#xff1a;服务器通过请求登录SMTP邮箱服务器接口&#xff0c;对指定的收件人发送信息。 建议大家使用商业版的邮箱&#xff0c;比如阿里云邮箱发信等 防止邮件发信漏源主要关注的是确保邮件…

MySQL innoDB存储引擎多事务场景下的事务执行情况

一、背景 在日常开发中&#xff0c;对不同事务之间的隔离情况等理解如果不够清晰&#xff0c;很容易导致代码的效果和预期不符。因而在这对一些存在疑问的场景进行模拟。 下面的例子全部基于innoDB存储引擎。 二、场景&#xff1a; 2.1、两个事务修改同一行记录 正常来说&…

Linux JDK修改不生效

原JDK8&#xff0c;现需要切换为JDK11&#xff0c;环境变量已经修改为11&#xff0c;但java -version还是显示8。 ln -s -f /home/jdk-11.0.19/bin/java

稀碎从零算法笔记Day45-LeetCode:电话号码的字母组合

题型&#xff1a;映射、回溯算法、递归 链接&#xff1a;17. 电话号码的字母组合 - 力扣&#xff08;LeetCode&#xff09; 来源&#xff1a;LeetCode 题目描述 给定一个仅包含数字 2-9 的字符串&#xff0c;返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出…

AI大模型引领未来智慧科研暨ChatGPT自然科学高级应用

以ChatGPT、LLaMA、Gemini、DALLE、Midjourney、Stable Diffusion、星火大模型、文心一言、千问为代表AI大语言模型带来了新一波人工智能浪潮&#xff0c;可以面向科研选题、思维导图、数据清洗、统计分析、高级编程、代码调试、算法学习、论文检索、写作、翻译、润色、文献辅助…

基于Springboot中小企业设备管理系统设计与实现(论文+源码)_kaic

摘 要 随着信息技术和网络技术的飞速发展&#xff0c;人类已进入全新信息化时代&#xff0c;传统管理技术已无法高效&#xff0c;便捷地管理信息。为了迎合时代需求&#xff0c;优化管理效率&#xff0c;各种各样的管理系统应运而生&#xff0c;各行各业相继进入信息管理时代&a…

TensorFlow学习之:深度学习基础

神经网络基础 神经网络是深度学习的核心&#xff0c;它们受人脑的结构和功能启发&#xff0c;能够通过学习大量数据来识别模式和解决复杂问题。神经网络的基本工作原理包括前向传播和反向传播两个阶段。 前向传播&#xff08;Forward Propagation&#xff09; 前向传播是神经…

AI大模型之ChatGPT科普(深度好文)

目录 训练ChatGPT分几步&#xff1f; 如何炼成ChatGPT&#xff1f; 如何微调ChatGPT? 如何强化ChatGPT? 如何调教ChatGPT? AI思维链是什么&#xff1f; GPT背后的黑科技Transformer是什么&#xff1f; Transformer在计算机视觉上CV最佳作品&#xff1f; ChatGPT是人…

修复 Windows 上的 PyTorch 1.1 github 模型加载权限错误

问题: 在 Windows 计算机上执行示例 github 模型加载时,生成了 master.zip 文件的权限错误(请参阅下面的错误堆栈跟踪)。 错误堆栈跟踪: 在[4]中:en2de = torch.hub.load(pytorch/fairseq, transformer.wmt16.en-de, tokenizer=moses, bpe=subword_nmt) 下载:“https://…