linux环境开发工具---yum与vim

1.Linux软件包管理器yum

1.1什么是软件包

在学习linux过程中,我们常常会遇到某些指令用不了的时候,原因除了权限问题外,还有可能是你当前的linux环境并没有安装相应的软件包。而在Linux下载安装软件的办法有两个,一个是先下载所需软件的源代码然后编译,得到可执行程序之后再安装。这种方法无疑是繁琐且麻烦的,所以就有人把一些常用的软件提前编译好,做成软件包(可以理解为windows上的安装程序)并放在服务器上,通过包管理器可以很方便的获取到这个已经编译好的软件包,直接进行安装,这是另一种方法,也是我们常用的一种方法软件包就像是“APP",而软件包管理器就好像是”应用商店“。

yum(Yellow dog Updater, Modified)是Linux下非常常用的一种软件包管理器. 主要应用在Fedora, RedHat,Centos等发行版上.

1.2yum的软件获取源在哪?

其实yum安装软件的本质就是在其源配置文件中找到目标软件的链接(URL),再到这个链接中去下载所需软件。

 运行以下命令以查看系统中的Yum源配置文件(需要root)

cat /etc/yum.repos.d/*.repo

也可以直接进入/etc/yum.repos.d目录查看配置文件

/etc/yum.repos.d/*.repo表示的是/etc/yum.repos.d目录下的所有以.repo后缀结尾的文件内容,每一个文件都代表着一个yum源配置。从中我们可以看到每个yum源配置的详细信息,包括名称、URL、启用状态等。

1.3关于rzsz

szrz 是一对用于在linux系统中进行文件传输的命令行工具,。它们通常用于通过串口或SSH等连接在远程计算机上进行文件的上传(rz)和下载(sz)。

1.4安装rzsz

yum -y install lrzsz

从windows机器上传文件到linux机器中

考虑以下指令

rz 

 从linux远端服务武器下载文件到windows中

sz 某个文件

注意事项

由于yum的所有操作都需要联网,就跟我们手机下载软件一样需要保持网络流畅。

可以通过ping指令来检测网络是否流畅

ping www.baidu.com

其原理就是去访问某个 www.baidu.com,然后发送一个ICMP 请求并等待响应,如果得到的响应数据正常,说明网络是顺畅的。

1.5查看软件包

我们通过yum list命令可以罗列出当前本地一共有多少软件包,由于数量可能非常多,我们需要使用grep命令筛选出目标软件包。 

考虑以下指令

yum list | grep 某个软件包 

 如果对grep或者 | 指令有问题的同学可以去我上一篇博客里面去了解一下

Linux基本指令总结(二)-CSDN博客

那么查看到的这一行的信息的各个字段分别代表什么意思呢?

 

1.6如何用yum安装软件

yum remove 某个软件包

注意yum指令都需要root权限,如果是普通用户则需要使用sudo提权。

2.Linux编辑器-vim使用

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

2.1.vim的基本概念

Vim 是一款强大的文本编辑器,它基于 Vi(另一款流行的文本编辑器)并提供了许多增强的功能。以下是一些 Vim 的基本概念:

2.2.vim常见的三种模式

1、普通/命令/正常模式(Normal Mode):默认模式,用于控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode,在该模式下,按键执行命令而非输入文本在该模式下按 “i” 是切换到插入模式,按 “shift + ;” (等于按 “:”)切换到底行模式。

2、插入模式(Insert Mode):该模式用于输入编辑文本。按”Esc"键返回到命令模式。

3、末行模式(Last line Mode):又叫底行模式。该模式下可进行文件的保存或者退出,也可以进行文本替换、找字符串、列出行号等操作,按”Esc"键返回到命令模式。在该模式下输入help vim-modes可以查找所有的模式。

值得注意的是,要想进入其它模式只能在命令模式中切换,比如在插入模式无法直接切换到底行模式,只能先按Esc回到命令模式再按i进入插入模式。

在底行模式 输入help vim-modes

2.3进入vim

 使用以下命令使用vim编辑文件

vim + 某个文件

进入vim处于的是命令模式

2.4.vim的基本操作

2.4.1模式的切换:
序号命令所处模式含义
1a/i/o命令模式切换到插入模式
2按左上角的Esc键任何模式切换到命令模式
3“shift + ;”,等价于输入“:”命令模式切换到底行模式

2.4.2命令模式命令集

以下命令均在命令模式中执行

光标的移动:
命令含义
h、j、k、l对应光标的左上下右的移动
G(shift+g)移动到文章的最后
$移动到光标所在行的“行尾"
^移动到光标所在行的“行首"
w光标跳到下个字的开头
e光标跳到下个字的字尾
b光标回到上个字的开头
#l光标移到该行的第#个位置,如:5l,56
gg进入到文本开始
ctrl+b屏幕往“后”移动一页
ctrl+f屏幕往“前”移动一页
ctrl+u屏幕往“后”移动半页
ctrl+d屏幕往“前”移动半页
删除文字: 
命令含义
x每按一次,删除光标所在位置的一个字符
#x例如,「6x」表示删除光标所在位置的“后面(包含自己在内)”6个字符
X(shift+x)大写的X,每按一次,删除光标所在位置的“前面”一个字符
#X例如,「6X」表示删除光标所在位置的“前面(包含自己在内)”6个字符
dd删除光标所在行
#dd从光标所在行开始删除#行
复制:
命令含义
yw将光标所在之处到字尾的字符复制到缓冲区中
#yw复制#个字到缓冲区
yy复制光标所在行到缓冲区
#yy例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字
p将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。
 其它:
命令含义
r替换光标所在处的字符
R替换光标所到之处的字符,直到按下「ESC」键为止
u撤销,回到上一个操作
ctrl+r撤销的恢复
c#w更改光标所在处的字到字尾处
ctrl+g例如,「c3w」表示更改3个字
#G例如,「15G」,表示移动光标至文章的第15行行首
 2.4.3底行模式命令集

以下命令在底行模式进行

命令含义
set nu列出行号
#一个数字,跳转到#行
/关键字查找关键字,按n往后继续查找
?关键字查找关键字,按n往下一个关键字处查找
w保存文件
q退出
wq保存并退出
q!强制退出
wq!强制保存并退出
w!强制保存

2.5 vim配置

2.5.1配置文件的位置

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

 可以看到,之所以我的vim看起来非常的”华丽“,是因为在vimrc里面已经配置好了各种命令。在我们打开vim时,会先读取vimrc里面的命令并生效,比如如果我们在里面配置了”set nu“显示行号的命令,在我们打开vim的时候就会自动显示行号了,非常方便。

配置选项比较多,大家可以去自行查阅。当然我们也可以使用插件。

2.5.2使用插件

1.安装TagList插件,下载taglist_xx.zip ,解压完成,将解压出来的doc的内容放到~/.vim/doc, 将解压出来的plugin下的内容拷贝到~/.vim/plugin
2.在~/.vimrc 中添加: let Tlist_Show_One_File=1 let Tlist_Exit_OnlyWindow=1 let Tlist_Use_Right_Window=1
3.安装文件浏览器和窗口管理器插件: WinManager
4.下载winmanager.zip,2.X版本以上的
5.解压winmanager.zip,将解压出来的doc的内容放到~/.vim/doc, 将解压出来的plugin下的内容拷贝到~/.vim/plugin
6.在~/.vimrc 中添加 let g:winManagerWindowLayout=‘FileExplorer|TagList nmap wm :WMToggle<cr>
7.然后重启vim,打开~/XXX.c或~/XXX.cpp, 在normal状态下输入"wm"

 

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

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

相关文章

RHCE【报警脚本】

要求如下&#xff1a; 根分区剩余空间小于20% 发送告警邮件给自己 配合crond每5分钟检查一次脚本 报警脚本的具体实现如下&#xff1a; #安装mailx(邮件服务包)[rootlocalhost ~]# yum install mailx #编辑邮件系统文件[rootlocalhost ~]# vim /etc/mail.rc#首先注…

远程连接银河麒麟

目录 一、防火墙服务 二、安装SSH服务 1.验证SSH服务是否安装 2.安装SSH服务 三、启动SSH服务 四、远程连接 1.切换登录用户 2.查看IP地址 3.FinalShell连接 4.切换root用户 前言: 本篇主要讲述在Win10系统中通过FinalShell远程连接银河麒麟桌面操作系统V10 一、防火…

UI Automator 常用 API 整理

主要类&#xff1a; import android.support.test.uiautomator.UiDevice;作用&#xff1a;设备封装类&#xff0c;测试过程中获取设备信息和设备交互。 import android.support.test.uiautomator.UiObject;作用&#xff1a;所有控件抽象&#xff0c;用于表示一个Android控件。…

LeetCode.670. 最大交换

题目 题目链接 分析 这道题的意思是我们只能交换一次&#xff0c;需要得到最大的数字。 我们的第一个想法就是要这个数字先变成一个数组&#xff0c;便于我们操作。 然后把数组最大的数放到第一个位置&#xff0c;如果最大的数字已经在第一个位置&#xff0c;那么就把次大的…

k8s之ingress

ingress基于域名进行映射&#xff0c;把url(http https)的请求转发到service&#xff0c;再由service把请求转发到每一个pod ingress只要一个或者少量的公网ip或者LB&#xff0c;可以把多个http请求暴露到外网&#xff0c;七层反向代理 理解为service的service&#xff0c;是…

windows11上安装虚拟机VMware

1、安装虚拟机&#xff08;待补充&#xff09; 第二步&#xff1a;安装VMware tools 实现windows文件上传到虚拟机中 1、安装好虚拟机后&#xff0c;查看虚拟机ip用Xshell连接虚拟机&#xff0c;并安装VMware tools(只有安装了VMware tools才能实现虚拟机和本机的文件共享。在…

shell脚本概念构成及脚本变量详解

目录 一、前言 1、程序编程风格 2、编程语言 3、编程的三种处理逻辑 二、shell脚本 1、shell脚本基础 1.1 什么是shell 1.1.1 shell的概念 1.1.2 linux中常见的shell类型及信息 1.1.3 shell脚本的功能 1.2 shell脚本及构成 1.3 shell脚本执行方式 1.4 脚本错误调试…

leetcode 670. 最大交换

题目&#xff1a; 解题方法 1.将整数转换成列表 2.从列表第一个数开始&#xff0c;每取出一次&#xff0c;找出列表余下数据&#xff08;列表list1&#xff09;的最大值,若取出的值小于list1的最大值&#xff0c;说明需要进行置换&#xff0c;置换处理&#xff1a; 找出lis…

基于51单片机开发的语音存储播放系统

实物演示效果&#xff1a; https://www.bilibili.com/video/BV1Ei4y1s7Jc/?vd_source6ff7cd03af95cd504b60511ef9373a1d 系统简介&#xff1a; 系统由单片机STC89C52、功率放大器、语音芯片ISD4004-16、液晶LCD1602、独立按键、扬声器等组成&#xff0c;用户可以通过按键设…

【剑指offer】重建二叉树

&#x1f451;专栏内容&#xff1a;力扣刷题⛪个人主页&#xff1a;子夜的星的主页&#x1f495;座右铭&#xff1a;前路未远&#xff0c;步履不停 目录 一、题目描述1、题目2、示例 二、题目分析1、递归2、栈 一、题目描述 1、题目 剑指offer&#xff1a;重建二叉树 给定节…

蓝桥杯Java组备赛(比赛环境:eclipse安装配置,hello world运行,常规操作配置)

目录 1.官方开发环境2.Eclipse安装1.官网下载2.本地安装3.编写helloworld 3.Eclipse操作优化1.设置自动补全代码2.常用快捷键3.调节字体大小和主题 1.官方开发环境 赛事大纲网址&#xff1a; https://dasai.lanqiao.cn/notices/846/2.Eclipse安装 1.官网下载 网址&#xff…

RuoYi-Cloud本地部署--详细教程

文章目录 1、gitee项目地址2、RuoYi-Cloud架构3、本地部署3.1 下载项目3.2 idea打开项目3.3 启动nacos3.4 若依数据库准备3.5 启动redis3.6 修改nacos中的各个模块的配置文件3.7 启动ruoyi前端项目3.8 启动各个微服务模块 4、启动成功 1、gitee项目地址 https://gitee.com/y_p…

基于SAM的视频标注

在本文中&#xff0c;我们将演示基础模型的应用&#xff0c;例如 Meta 的 Segment Anything 和 YOLOv8&#xff0c;以自动检测、分类和绘制视频中感兴趣对象的蒙版。这是之前指南的后续&#xff1a;使用 Meta 的 Segment Anything 和 YOLOv8 自动分类掩码。在本指南中&#xff…

跟着顶刊学科研绘图——nature配色篇(一)

只有朝着100分学习&#xff0c;才能想出80分的想法&#xff0c;交出60分的答卷。 今日一起跟着nature培养科研绘图配色的美感。 三色对比 四色对比 今日学习收获 现在顶刊感觉更加喜欢马卡龙色这种浅色系啊 参考文献 [1] Lim, F., Solvason, J.J., Ryan, G.E. et al. Affi…

面试篇-大厂的面试流程和面试注意事项

以前找工作的时候&#xff0c;对于流程中的面试总是好奇流程走到哪一步了&#xff0c;这一轮面试有没有通过&#xff0c;后面不通过还有没有消息通知等问题。今天作为一个求职者和面试官的身份来主要讲一下大厂招聘&#xff0c;内部的面试过程以及流转的流程是什么样的以及该注…

latex添加图片以及引用的实例教程

原理 在 LaTeX 中插入图片&#xff0c;通常是使用 \includegraphics 命令&#xff0c;它是由 graphicx 包提供的。首先&#xff0c;确保在文档的前言部分&#xff08;\documentclass 之后和 \begin{document} 之前&#xff09;包含了 graphicx 包。 下面是一个基本的例子来展…

【VUE】如何有效管理重复请求

【VUE】如何管理重复请求 需求 重复的HTTP请求可能对应用程序性能造成很大影响&#xff0c;尤其是在用户快速点击或多次触发同一操作时。在Vue应用中&#xff0c;我们可以使用axios的请求拦截器&#xff08;interceptors&#xff09;配合AbortController来取消重复的HTTP请求…

防抖(debounce)

防抖:单位时间内&#xff0c;频繁触发事件&#xff0c;只执行最后一次 所谓防抖&#xff0c;就是指触发事件后在 n 秒内函数只能执行一次&#xff0c;如果在 n 秒内又触发了事件&#xff0c;则会重新计算函数执行时间 现在有一个小栗子&#xff1a;鼠标在box中移动的时候&#…

OSS存储引擎如何使用以及如何添加图片【建议收藏】

Aliyun OSS对象存储&#xff0c;可以用来做文件服务器&#xff0c;存放一些文件&#xff0c;图片等资源&#xff0c;那么我们使用OSS&#xff0c;需要经历以下步骤&#xff1a; 这里就从如何开通OSS服务开始进行&#xff0c;到如何上传一个资源文件到OSS结束。 1、阿里云注册 …

第二百八十四回

文章目录 概念介绍使用方法示例代码 我们在上一章回中介绍了下拉刷新组件相关的内容&#xff0c;本章回中将介绍WillPopScope组件.闲话休提&#xff0c;让我们一起Talk Flutter吧。 概念介绍 我们在本章回中介绍的WillPopScope组件是一种事件拦截类组件&#xff0c;它没有具体…