Linux 常用开发工具(yum、vim)

news2024/10/7 15:30:07

绪论

耐心是一切聪明才智的基础。—— 柏拉图。本章进入到Linux下的一些常用的工具,这些工具能帮助我们去更好的使用Linux操作系统。

话不多说安全带系好,发车啦(建议电脑观看)


附:红色,部分为重点部分;蓝颜色为需要记忆的部分(不是死记硬背哈,多敲);黑色加粗或者其余颜色为次重点;黑色为描述需要


思维导图:

 要XMind思维导图原件的话可以私信哈


目录

1.yum

2.vim编辑器


1.yum

知识点:

在Linux下的一些安装软件的方法:

  1. 源代码安装:直接进行编译代码, 得到可执行程序(主要在Linux下会使用,但是是比较麻烦的一种安装方法因为容易出现代码错误,不推荐使用
  2. rpm安装:常用的软件提前编译好, 做成软件包放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.(同样也不推荐,安装的过程会依赖于其他软件,就导致安装前就需要去安装其他的软件,类似于Linux下的安装包需要自己去找安装包并且判断其版本是否符合需求))
  3. yum(Yellow dog Updater, Modified)安装是Linux下非常常用的一种包管理器。 主要应用在Fedora, RedHat,Centos等发行版上(比较推荐使用,他会解决对于安装包的寻找、安装包的版本、安装包的依赖问题,总体来说就像一个傻瓜式的简易安装方法)

yum安装软件(甚至可以说是所有软件安装的过程)的具体方法如下图: 


细节:

1.1如何用yum安装软件:

首先需要我们在有网络的情况下进行(pring + 网址查看是否联网出现像下面这种就是有网的状态)

如我们要安装rzsz(rzsz是一个用于 windows 机器和远端的 Linux 机器通过 XShell 传输文件的工具)这个工具:

安装软件的方法:yum install 软件名

而删除的软件的方法是:yum remove 软件名

可以在其中加上一个 附加指令 -y  :加上后在安装或者卸载的时候就不会去询问到底是否要安装/卸载(rzsz的软件全名是:lrzsz.x86_64 所以安装/卸载的方法yum install -y lrzsz.x86_64、yum remove -y lrzsz.x86_64

安装完毕之后就可以通过拖拽的方式/ rz通过选择的方式 将windows文件上传到Linux,而sz是将Linux下的文件上传到Windows下


1.2yum 是从哪里去获取软件的呢?

其实是yum内置了软件的下载链接在如下文件中:

我们打开这个文件就能看到yum源

而对于在官方yum源上的都是比较官方正规的软件,对此还有一些非官方yum源的还有一些非官方的软件(又称扩展yum源,对于官方软件来说他们都是经过筛选过的正规的软件)在epel.repo中就能看到扩展yum源

安装扩展源的方法:yum install -y -epel-release,在扩展yum源中有许多好玩的小程序具体请看这篇文章:Linux----centos7版本下好玩有趣的命令(总结精华版)

因为有些yum源会在国外访问起来比较缓慢所以我们还能去改变yum源具体可以看下面这篇文章:Linux------centos7如何将国外yum源更换成国内的(减量不减质版)


1.3为什么会有人在服务器上给我们写好软件呢?

首先,使用Linux都是职业的程序员们(windows上主要以娱乐为主),所以对于Linux下的软件同样会有人去为了程序员而开发软件,而我们要使用Linux就需要有人提供操作系统。所以其次一些操作系统的设计者和推动者(centos、ubuntu),他们就会为了让更多的人使用他们的产品他们就会花大量的精力去调整改进他们的生态(云服务器、提供服务器上的软件),对此当使用的人多了其生态也会变得越来越好(他们就更不容易倒掉,因为假如要倒掉时会有人进行捐助,不希望怎么好的生态使用不了)最后附加一点,开源是一种商业战略,并且有时候开源也是挺贵的

这样就有了一个循环,人们为了使用操作系统就会去选择一款生态好的操作系统软件,然后因为有了需要就会有人去开发操作系统来维持,维持服务器以及论坛和服务器上的软件生态,这样就成了一个循环人们相互互利最终不断进步壮大。

对于yum来说因为已经有人提供好了良好的生态,已经帮我们准备好了去哪里下载、服务器、软件写好放在服务器上,最终yum就能直接在操作系统中获取所需要的软件

附:新人如何做操作系统的技术选型:

就以我们现在用centos7来说它:

  1. 来源容易获取、是一个稳定的版本
  2. 操作系统有活跃成熟的社区论坛、以及文档,能快速的解决问题并且没有太大的漏洞,即使有也能在社区内找到解决的方法
  3. 成熟丰富的软件生态,生态很好,并且大公司也在用

2.vim编辑器

知识点:

vim他是一个多模式(命令模式、插入模式、底行模式)的编辑器。并且vim是一个比较经典的编辑器当我们学过他后再学其他的编辑器时就能非常容易的上手。

vim的打开文件方法:vim 文件名

2.1vim下的三种模式及相互的切换:

刚打开vim时是直接在命令模式(默认模式)此时我们输入的所有都被当作命令(编辑命令)的形式输出,所以在此时我们输入是看不见文本的。而我们若要写代码/输出文本的话我们要先进入到插入模式键盘上直接输入 i ,输入后会在命令行的最下面出现大写英文INSERT),就能正常的去写一些你所要写的(代码/文本),当我们输出完后想要退出vim并且保存我们所写的代码时需要先退出到命令模式(按 左上角的esc),然后从命令模式下才能进入底行模式输入 :冒号( shift + ; )) 此时在命令行的下面就会出现一个冒号后我们再在此处输入wq ,就是退出vim加保存所写内容,单独的w是保存、单独的q是只是退出,同样假如我们还要回到命令模式还是esc)具体如下图:

附:


细节:

2.2命令模式:

  1. 单文件的操作:
    1. 光标定位:

      gg 定位到最开始shift + g 定位到结尾n + shift + g 定位到第n行

    2. 复制和粘贴:

      nyy复制光标所在行及以下的共n行(不输入n时默认复制一行)、np粘贴n次到光标所在的下面行(n不写时只复制一次)

    3. 剪切(删除)ndd (同样支持n行同时操作)

    4. 撤销 、对撤销后悔ctrl  + r 

    5. 锚点:

      shift + 4($)定位到当前行的结尾

      shift + 6(^)定位到当前行的开头

      w、b跨单词进行向后、向前移动

    6. h、j、k、l对应的左、下、上、右来进行移动操作(当然上下左右的方向键也是能使用的,但不推荐,当我们使用习惯后hjkl会比方向键移动的更快。在当年方向键还没有出现时是使用hjkl的

    7. 快速改变n个字符nr + 要变成的新字符

    8. shift+r :批量化替换,对内容进行整体替换(你输入后直接覆盖掉后面的,他也是第四种模式replace(按esc退回命令模式))

    9. nx:把对光标及往后的n个字符进行直接删除

  2. 多文件的操作(其实是同时打开多个窗口,在每个窗口下还是单文件的操作方法):

    1. 底行模式下,可以输入 vs + 新要创建的文件名  打开多个文件编辑窗口  

    2. ctrl ww窗口的转换光标所在的位置就所在的文件,若要退出某个窗口的方法同样也是通过底行模式退出


2.3底行模式:

w:保存、q:退出、!:可以直接在后面加上后强制执行:

即加上!就是强制保存(w!)、 退出(q!)、  wq!(强制保留并退出)

set nu : 调出行号、set nonu:除去行号

插入模式没有啥好讲的,直接在里面写代码或者文本即可。

注意上面这些指令一定要去自己尝试一下

2.4vim的配置

配置是什么?:类似于高亮、括号的匹配提示、常用代码的快速写入.....,让我们在写代码时更加的方便便捷,在默认情况下是没有什么配置的,我们可以自己去添加一些配置:

如何配置:

在所在的目录下查看有没有.vimrc文件,如果没有直接用vim打开.vimrc(没有的情况下会自动创建一个),如果有的话用vim将其打开并且直接在其里面进行添加配置即可,具体的配置可以在网上搜素(vim配置文件)后将他们的配置文件复制到.vimrc中配置即可,下面有几个常用的可以配置了看看:

set number  显示行号

set cursorline  显示所在行

syntax on  语法高亮(如括号匹配)

用法例如:

附:每个用户的每个配置间并不会相互影响,root的家目录下的配置文件在/etc/vimrc下是一个非隐藏文件,不建议给root做配置对于创建了vimrc配置文件;vimrc的配置过程他会先从root开始查看vimrc中的配置,然后逐渐到用户再到文件最终将其汇总以及重复的进行覆盖成,合并在一起来配置 Vim。


本章完。预知后事如何,暂听下回分解。

如果有任何问题欢迎讨论哈!

如果觉得这篇文章对你有所帮助的话点点赞吧!

持续更新大量Linux细致内容,早关注不迷路。

关于...重要知识点总结

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

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

相关文章

[MAUI程序设计] 用Handler实现自定义跨平台控件

文章目录 Handler与Xamarin.Forms实现的区别为什么要用Handler代替Renderer解耦生命周期管理更细粒度的控制 用Effect来实现呢?自定义手势监听控件在各平台上实现TouchRecognizeriOS中的实现Android中的实现Windows中的实现 创建控件使用控件最终效果项目地址 今天来…

使用 Kubeadm 和 CRI-O 在 Rocky Linux 8 上安装 Kubernetes 集群

在 Rocky Linux 8 上安装 Kubernetes 集群。毫无疑问,Kubernetes 将继续改变我们大规模部署和管理业务应用程序的方式。无论用于部署应用程序的模型是手动还是通过 CI/CD 管道,Kubernetes 仍然是处理编排、管理和扩展应用程序的最佳选择。 对于那些不知…

一劳永逸的方法解决函数scanf报错问题

目录 scanf报错示例 代码 报错提醒 报错翻译 解决方案1(不建议):将scanf换成scanf_s; 解决方案2(临时解决): 解决方案3(建议): 方法1(建议&#xff09…

javaScript蓝桥杯----资讯接口

目录 一、介绍二、准备三、目标四、代码五、知识点1.res.end()2.res.end与res.send 六、完成 一、介绍 随着技术的发展,很多前端工程师已经不满足于只做诸如页面布局和交互这些开发工作了,很多人将目光逐渐转向了“大前端”范围,其中就包括不…

Vim学习笔记【Ch03】

Vim学习笔记 系列笔记链接Ch03 Searching FilesVim中打开和编辑文件用Find进行文件搜索用grep进行文件内搜索:vim搜索:grep搜索 通过Netrw浏览文件Fzffzf和ripgrep安装fzf配置fzf语法查找文件在文件内部查找用Rg代替Grep在多个文件中搜索和替换 小结 系列笔记链接 Ch00&#x…

【论文速览】根据人脑fMRI信号重建图像 Image Reconstruction from human brain activity

文章目录 前言文章一研究背景主要方法部分实验结果总结与思考参考资料 文章二研究背景主要方法部分实验结果总结与思考 前言 人类的视觉神经系统对于真实世界的视觉刺激有着非凡的感知与理解能力,比如我们能够准确地识别物体距离和三维几何关系等,这是当…

2023/6/4总结

CSS的学习: 2023-06-01 19-57-46-649 移动开发流式布局: 流式布局,是根据百分比布局,因为手机的尺寸会不一样,所以利用百分比布局可以很好的解决缩放以及尺寸问题: 这是跟着视频做的一个案例:…

Lecture 8 Deep Learning for NLP: Recurrent Networks

目录 Problem of N-gram Language Model N-gram 语言模型的问题Recurrent Neural Network(RNN) 循环神经网络RNN Language Model: RNN 语言模型Long Short-Term Memory Model (LSTM) 长短期记忆模型(LSTM)Gating Vector 门向量Forget Gate 忘记门Input G…

ChatGPT 使用 拓展资料:大模型时代的开发者新机遇

ChatGPT 使用 拓展资料:大模型时代的开发者新机遇

Nginx-rewrite模块详细介绍

Nginx-rewrite模块 前言一、Nginx-rewrite模块概述1、rewrite场景2、rewrite实现3、rewrite执行顺序4、语法格式 二、rewrite示例1、基于域名的跳转2、基于客户端IP访问跳转3、基于旧域名跳转到新域名后面加目录4、基于参数匹配的跳转5、基于目录下所有 php 结尾的文件跳转6、基…

代码报错 | 出bug-->该如何调试?

代码报错 | 出bug-->该如何调试? 什么叫做bug调试是什么?有多重要?Debug和Release的介绍调试常用的快捷键调试时查看程序当前的信息 如何写出好(易于调试)的代码对const的通俗生活中举例assert的理解 编译常见的错误…

Java程序员面试经验总结

目录 一、企业是如何筛选简历的1.简历筛选流程2.HR如何筛选简历3.部门负责人筛选简历4.总结-简历筛选规则 二、简历注意事项1.简历整体结构2.职业技能3.项目经历4.总结 三、应届毕业生改如何找到合适的练手项目1.项目来源2.如何深入学习项目3.应该学习哪些模块4.模块该如何吃透…

【owt】WebrtcNode, subscribe-sdp offer 流程(1)

sdp offer 流程 1. AmqpClient - New message received sdp offer 的消息 2023-04-26T21:54:19.790 - DEBUG: AmqpClient - RpcServer New message received {method: onTransportSignaling,args: [b149e44bb10d4e91bd162a8c6806ae7b,{sdp: v0\r\n o- 7177131362423164715 …

K8S常见应用场景(六)

Kubernetes 是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。 Kubernetes 拥有一个庞大且快速增长的生态系统。Kubernetes 的服务、支持和工具广泛可用。 Kubernetes 这个名字源于希腊语,意为“…

【Java系列】Mybatis-Plus 使用介绍二

序言 你只管努力,其他交给时间,时间会证明一切。 MyBatis-Plus 是 MyBatis 的增强工具,它简化了 MyBatis 的开发,并提供了许多实用的功能和工具类。下面是 MyBatis-Plus 的使用方法: 1 使用方法 1. 引入依赖 在 Maven…

MySQL数据库 9.DQL操作

目录 ​编辑 🤔前言: 🤔DQL介绍: 🤔查询种类: 1.基本查询: 🔍1.查询多个字段: 🔍2.查询所有字段: 🔍3.去除重复记录&#xff…

【数据结构】常见排序算法——常见排序介绍、插入排序、直接插入排序、希尔排序

文章目录 1.排序的概念和应用1.1排序的概念1.2排序的运用1.3常见的排序算法 2.常见的排序算法2.1插入排序2.1.1直接插入排序2.1.2希尔排序 1.排序的概念和应用 1.1排序的概念 在计算机科学中,排序是将一组数据按照指定的顺序排列的过程。排序算法由于执行效率的不同…

01_爬虫基础知识和requests模块简介

爬虫基础知识 1、爬虫简介: 爬虫的作用:帮助我们把网站信息快速提取并保存爬虫的分类: 通用爬虫聚集爬虫爬虫的安全知识:目前来说,无明确法律规定,但每个官网都有自己的爬虫协议(网址后面加/robots.txt)爬虫的爬取流程: 1、获取网页2、提取信息3、保存数据2、爬虫必须…

分布式软件架构——远程服务调用

序言 “架构师”可以是做企业战略设计的架构师,也可以说做业务流程分析的架构师。 架构师视角特指软件系统中技术模型的系统设计者。 在做架构设计的时候,架构师应该思考哪些问题、可以选择哪些主流的解决方案和行业标准做法,以及这些主流方…

【自制C++深度学习框架】前言

KuiperCourse 介绍 此GitHub项目是一个初学者的深度学习框架,使用C编写,旨在为用户提供一种简单、易于理解的深度学习实现方式。以下是本项目的主要特点和功能: 计算图:使用计算图来描述深度学习模型的计算过程,利用计…