【Linux基础开发工具】yum生态vim的配置与使用

目录

前言 

1. Linux 软件包管理器 yum

  1.1 什么是yum

 1.2 快速上手yum

 1.3 yum生态

2. Linux编辑器vim

2.1 vim的模式

2.2 vim使用技巧

3. vim编辑器辅助功能配置

3.1 配置

 3.2 用户sudo权限配置

 总结


前言 

        Linux基础指令与权限之后,Linux系统开发工具的使用也至关重要,今天我将分享一些优化Yum生态和Vim配置与使用相关内容,帮助你打造一个高效的Linux开发环境。

在这里插入图片描述

1. Linux 软件包管理器 yum

       在Linux系统的使用中难免需要安装一些软件,安装软件的方式有三种:

  • 源代码安装(下载到程序的源代码, 并进行编译, 得到可执行程序)
  • rpm包直接安装(使用较为复杂,国外资源下载较慢)
  • yum /apt-get

 前两种的安装方式过于复杂,为了解决安装软件麻烦的问题,于是便有了yum。

  1.1 什么是yum

       Yum (Yellowdog Updater Modified)是一个在Linux操作系统上管理软件包的工具,主要应用在Fedora、RedHat、Centos等发行版上 。Yum生态中包含了许多官方和第三方的软件包仓库,用户可以通过Yum来管理这些软件包仓库中的软件包。

yum:yum是Linux预装的一个指令,搜索、下载、安装对应的程序。

也可以理解为:yum就相当于Linux的应用商店

 1.2 快速上手yum

  • yum list

显示配置的仓库中所有可用软件包的列表

还可以使用特定选项来过滤 "yum list" 的输出

比如:

yum list installed 只显示已安装的软件包

  •  yum install [-y] command

它是在 Linux 系统中使用 Yum 软件包管理器安装软件的命令

  • "yum install" 后面跟着要安装的软件包名称或软件包的 URL
  • "-y" 是一个可选的参数,表示在安装软件包时不需要用户确认,直接自动确认安装
  • "command" 是要安装的软件包的名称或 URL。这个命令会让 Yum 软件包管理器自动下载并安装指定的软件包

在安装一些软件包时,如果yum没有,这时可以尝试安装一下yum的扩展包:

yum install -y epel-release
  • yum remove command

 用于卸载已安装的软件包的命令

注意:

它会删除指定的软件包及其相关的依赖项,同时也会删除软件包安装时创建的配置文件和数据文件

 1.3 yum生态

       我们知道yum是 Linux 软件包管理器,那么问题来了,yum从哪里获取软件,软件源又是什么,它又是怎么获取的呢?

 如下图:

 当输入指令时,yum会发送请求给远端仓库,根据指令信息,在远端仓库进行搜索,然后进行反馈。

yum源又是什么?怎么来的呢?

为了方便一些软件的下载,国内的一些组织会将国外的软件提前下载,放在远端的仓库供用户使用,我们也可以在我们的Linux机器上查看我们的远端仓库。

vim /etc/yum.repos.d/CentOS-Base.repo

        这里可以看到我的yum源是阿里云的远端仓库。当然yum源也是可以更改的,这里不再进行详细介绍,yum也是通过这个链接去访问远端仓库下载。

2. Linux编辑器vim

       vim是一个高度可定制的文本编辑器,通常用于在Linux系统上进行编程和文本编辑。它具有许多强大的功能。

 我们在Linux上敲代码几乎都是使用的vim编辑器。

 启动编辑器:

vim + "文件名"

 如果在使用vim指令时出现错误无法使用,那很可能是vim没有安装,安装指令:

sudo yum install vim

 我们启动vim编辑器进入到一个文件后,我们按键盘上的键会没有反应,有的有反应,但不是我们想要的效果等这些情况,这都是由于不熟悉vim编辑器的原因。

2.1 vim的模式

 vim编辑器有好多种模式,这里我们只介绍三种模式,以供我们的基本使用。

 在进行文本编辑操作时,我们做常用的也就三种模式:

  • 命令模式
  • 插入模式
  • 底行模式

 我们使用vim编辑器打开一个文件时,默认是在命令模式

 转换关系如下:

如果在使用vim的过程中遇到这样的情况:

 这是因为vim异常关闭造成的,在底行我们可以看到一行选项,‘R’-->shift +r,可以恢复文件内容,但是下次打开还是这样的页面。

这是因为vim在异常关闭时会产生一个临时文件:

 ‘D’->shift +d选项可以删除这个文件,这时再次使用vim打开code.c就正常了,或者自己手动删除

 注意:以 .(点)开头的文件是隐藏文件(ls -al指令可以查看到隐藏文件)

 命令行常用指令:

  • shift +&:光标定位到当前行最右侧结尾处
  • shift + ^:光标定位到当前行最左侧开头处
  • shift + g:光标定位到文本行最结尾
  • n+shift + g:光标定位到n指定行的开头
  • gg:光标定位到文本最开始
  • h:光标左移
  • j:光标下移
  • k:光标上移
  • l:光标右移
  • w:按照 “ 单词 ” 在行内向后移动
  • b:按照 “ 单词 ” 在行内向前移动
  • n+yy:复制当前行/多行(n指定复制行数,单行操作时可以不加数字n)
  • n+p:在下一行进行粘贴/多行(n指定粘贴次数,(单行操作时可以不加数字n)
  • u:撤销编辑操作(undo)
  • ctrl+r:对撤销进行插销
  • n+dd:剪切(删除)当前行/多行(单行操作时可以不加数字n)
  • shift+`-> ~:大小写进行快速切换
  • n+r:替换当前光标所在的字符
  • shift +r ->R:替换模式
  • n+x:删除光标所在字符(n指定删除的字符个数,向右删除)
  • n+shift+x:删除光标所在字符(向左删除)
  • shift +3 ->#:高亮要查找的函数名
  • n:下一个查找的函数/字符串名

底行模式:

  • w:保存写入
  • q:退出
  • wq:保存并退出
  • wq!:强制保存并退出(!为强制进行,可与上述底行命令结合使用)
  • !command:在底行模式进行命令操作

执行完一次操作后:按enter键或键入命令继续

 在底行模式下还可以创建文件:

 在底行模式创建的文件如果没有w指令,只用:q退出并不会实质性创建文件。

 创建文件后我们发现出现了多个窗口,并且他们是同一个底行,那底行输入到底是哪个窗口的?

光标所在界面就是我们所编辑的页面

  •  ctrl +ww:切换窗口
  • set nu:添加行号
  • set nonu:撤销行号

2.2 vim使用技巧

        我们使用vim主要是用来编写代码,那么批量注释和批量去注释是我们经常用的,那么怎么在Linux的vim模式下批量注释代码呢?

批量注释步骤如下:

  1. ctrl +v(默认命令模式进行)
  2. hjkl区域选择
  3. shift+i->I(此时会进入插入模式)
  4. //
  5. Esc

 批量去注释:

  1. ctrl+v
  2. hjkl区域选择
  3. d

3. vim编辑器辅助功能配置

         在Linux环境下,每个用户都可以配置自己的vim编辑器,示例将会在普通用户下进行

 在每个用户的家目录下一般情况下是没有.vimrc文件的。

         .vimrc文件是用来配置Vim编辑器的用户自定义配置文件。用户可以在这个文件中设置Vim的各种参数、键盘映射、颜色方案、插件等。这样在启动Vim时,会自动加载这个文件中的配置

 每个用户可以在自己的家目录下创建一个.vimrc文件并进行配置

 注意:Linux系统下自带有.vimrc文件的,在ect目录下,这个配置文件是root用户所使用的

3.1 配置

 在用户家目录下创建一个 .vimrc文件(cd ~进入自己的家目录)

 使用vim编辑器打开 .vimrc文件进行编辑(文件默认为空)

以下是一些编程常用指令的配置:

set nu                    " 显示行号
set cursorline            " 突出显示当前行
hi Cursorline cterm=bold ctermbg=black ctermfg=green guibg=green "粗体显示选中行,用黑色框,字体标绿
set autoindent           " 自动缩进
set cindent
set tabstop=4            " Tab键的宽度
set softtabstop=4        " 统一缩进为4
set shiftwidth=4
"括号补齐
inoremap ( ()<ESC>i
inoremap [ []<ESC>i
inoremap { {}<ESC>i
inoremap " ""<ESC>i

 3.2 用户sudo权限配置

 我们已经基本了解了vim,现在可以使用vim编辑器来配置普通用户的sudo权限

  • 切换到root用户下(sudoers文件只有root可以修改),使用vim编辑器打开sudoers文件
vim /etc/sudoers
  •  打开之后向下移动光标找到## Allow root to run any commands anywhere的位置

  •  复制root那一行,粘贴到root的下一行,将root名字改为自己要添加sudo权限的用户名字即可

 总结

        本期的内容操作的内容非常多,向大家分享了许多vim编辑器使用的技巧,大家私下可以实操一下,能够使用好vim编辑器可以让我们更高效的工作学习,好了以上便是本期的全部内容。最后,感谢阅读!

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

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

相关文章

美林防火建材——朱林甫 坚韧与创新:美林传奇

在这个变幻莫测的时代&#xff0c;有一些创业者凭借着对行业的深刻理解和对未来的敏锐洞察&#xff0c;不仅在商海中乘风破浪&#xff0c;更是引领了整个行业的发展。今天&#xff0c;我们要讲述的&#xff0c;就是一位这样的创业者——来自浙江嘉善的朱总&#xff0c;他创立的…

初始Redis(入门篇)

目录 什么是Redis Redis特性 速度快 丰富的功能 客户端语言多 持久化 主从复制 Redis可以做什么 缓存 排行榜系统 计数器应用 消息队列系统 Redis安装 centos7安装 Redis重要文件 Redis的使用 Redis通用命令 set get keys exists del expire 什么是Redi…

生成式AI与预测式AI的主要区别与实际应用

近年来&#xff0c;预测式人工智能&#xff08;Predictive AI&#xff09;通过先进的推荐算法、风险评估模型、以及欺诈检测工具&#xff0c;一直在推高着该领域公司的投资回报率。然而&#xff0c;今年初突然杀出的生成式人工智能&#xff08;Generative AI&#xff09;突然成…

如何绕过某讯手游保护系统并从内存中获取Unity3D引擎的Dll文件

​ 某讯的手游保护系统用的都是一套&#xff0c;在其官宣的手游加固功能中有一项宣传是对比较热门的Unity3d引擎的手游保护方案&#xff0c;其中对Dll文件的保护介绍如下&#xff0c; “Dll加固混淆针对Unity游戏&#xff0c;对Dll模块的变量名、函数名、类名进行加密混淆处理&…

Android中添加C或C++代码

1、创建cpp目录&#xff0c;用于存放C和C代码。 2、创建CMake构建脚本CMakeLists.txt文件&#xff0c;将其放在cpp目录中。 # Sets the minimum version of CMake required to build the native library. cmake_minimum_required(VERSION 3.22.1)# Declares and names the pro…

单宁对葡萄酒可饮用性和陈酿潜力会有影响吗?

当在酿酒过程中葡萄酒中的单宁过量时&#xff0c;酿酒师可以使用白蛋白、酪蛋白和明胶等各种细化剂&#xff0c;这些药物可以与单宁分子结合&#xff0c;并将其作为沉淀物沉淀出来。随着葡萄酒的老化&#xff0c;单宁将形成长长的聚合链&#xff0c;氧气可以与单宁分子结合&…

数据挖掘实战-基于word2vec的短文本情感分析(文末送书)

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…

【PPT模板合集】关于自制内容的PPT模板合集,包括原创的PPT及改良内容的PPT,适合科研/比赛/工作

【PPT模板合集】关于自制内容的PPT模板合集&#xff0c;包括原创的PPT及改良内容的PPT&#xff0c;适合科研/比赛/工作 零、前言一、校园层面的PPT模板1.1 各种毕业答辩1.2 夏令营答辩1.3 奖学金答辩1.4 比赛/项目答辩 二、学术层面的PPT模板2.1 学术汇报2.2 会议海报类型 三、…

使用VScode通过内网穿透在公网环境下远程连接进行开发

文章目录 前言1、安装OpenSSH2、vscode配置ssh3. 局域网测试连接远程服务器4. 公网远程连接4.1 ubuntu安装cpolar内网穿透4.2 创建隧道映射4.3 测试公网远程连接 5. 配置固定TCP端口地址5.1 保留一个固定TCP端口地址5.2 配置固定TCP端口地址5.3 测试固定公网地址远程 前言 远程…

网站监控有什么作用?

科技改变生活&#xff0c;科技的发展让我们的生活越来越精彩丰富&#xff0c;数据中心机房监控系统也可以称为“自我监控系统”&#xff0c;主要是针对机房所有的设备及环境进行集中监控和管理的&#xff0c;其监控对象构成机房的各个子系统&#xff1a;动力系统、环境系统、消…

SpringBoot+Redis获取电脑信息

获取电脑信息 测试 System.getProperties(); System: 是Java中的一个内置类&#xff0c;用于提供与系统相关的功能和信息。这个类中包含了一些静态方法和常量&#xff0c;可以让您方便地访问和操作系统级别的资源。 getProperties(): 是一个静态方法&#xff0c;它返回一个表示…

学习笔记小结

redis-cluster集群 redis3.0引入的分布式存储方案 集群由多个node节点组成&#xff0c;redis数据分布在这些节点当中。 在集群之中分为主节点和从节点 集群模式当中&#xff0c;主从一一对应&#xff0c;数据的写入和读取与主从模式一样&#xff0c;主负责写&#xff0c;从…

实时沟通,实时增长:企业使用WhatsApp Business的不二选择

在数字化浪潮中&#xff0c;WhatsApp Business崭露头角&#xff0c;成为企业与客户之间沟通的新利器。今天运营坛将和大家深入探讨WhatsApp Business在2023年为企业带来的机遇&#xff0c;从增长率、客户群体、功能特性以及优势等方面剖析为何企业需要充分利用这一强大工具。 W…

VirtualBox上安装CentOS7

基础环境&#xff1a;宿主机是64位Windows10操作系统&#xff0c;通过无线网访问网络。 macOS可以以类似方式进行安装&#xff0c;不同之处见最后补充。 Step1 安装VirtualBox VirtualBox是一款免费、开源、高性能的虚拟机软件&#xff0c;可以跨平台运行&#xff0c;支持Wi…

突发,合肥一废品回收站发生火灾,富维AI神器助力防灾

昨晚&#xff0c;合肥一废品回收站突发火灾&#xff0c;火光冲天&#xff0c;烟雾蔓延。幸亏及时发现&#xff0c;消防人员迅速到场&#xff0c;控制了火势。这起事件让我们再次认识到火灾报警的重要性。而在这方面&#xff0c;北京富维图像公司的FIS智能图像识别系统就发挥了巨…

1+x中级网络运维实验题

任务 1&#xff1a; 设备命名 为了方便后期维护和故障定位及网络的规范性&#xff0c;需要对网络设备进行规范化命名。请根据 Figure 3-1 实验考试拓扑对设备进行命名。命名规则为&#xff1a;城市-设备的设置地点-设备的功能属性和序号-设备型号。例如&#xff1a;处于杭州校…

基于 Gin 的 HTTP 代理 Demo(2)

一周后勘误&#xff1a; 我这里实现的严格来说还是 HTTP 代理&#xff0c;只不过是通过隧道的方式传输非 HTTP 的流量&#xff0c;这里是 HTTPS 流量。尽管它可以传输 HTTPS 流量&#xff0c;它也不算是 HTTPS 代理。 上次写了 基于 Gin 的 HTTP 代理 Demo 之后&#xff0c;对…

ant design vue3 处理 ant-card-head ant-tabs靠左边对齐之has选择器不生效

火狐浏览器是不支持has的。 解决方法&#xff1a;通过position来解决。

解析编程中的技术迷题:常见挑战与应对策略

前言 在数字化时代的浪潮中&#xff0c;编程已经成为了一项至关重要的技能。无论是在软件开发、数据分析、人工智能还是互联网领域&#xff0c;编程都扮演着不可或缺的角色。作为一种创造性的活动&#xff0c;编程不仅仅是代码的书写&#xff0c;更是一种解决问题和创新的思维方…

软件测试的测试文档怎么编写?

在软件测试中的流程中&#xff0c;测试文档也是一个重要的流程&#xff0c;所以测试人员也需要学习测试文档的编写和阅读。 一定义&#xff1a; 测试文档&#xff08;TestingDocumentation&#xff09;记录和描述了整个测试流程&#xff0c;它是整个测试活动中非常重要的文件。…