0基础学习Linux之揭开朦胧一面:环境基础开发工具

目录

Linux下安装软件的方案:

对于操作系统的理解:

操作系统的生态问题:

什么是好的操作系统(os):

重新理解centos VS ubnutu VS kail:

关于yum:

 用 yum 安装软件(安装和卸载软件一定要有root权限):

查看所有可安装的软件包:

关于vim(安装vim指令:yum -y install vim):

什么是vim:

vim的多模式:

命令模式(打开vim默认所处的模式,命令模式提供许多编辑指令,这些编辑命令帮助我们提高编写效率):

光标定位:

锚点定位:

撤销命令:

其他命令:

底行命令(shift+:进入底行模式):

替换模式:

视图模式:

批量注释:

全文注释:

批量化取消注释:

批量化插入:

查找历史命令:

插入模式:(vs下写代码输入就是正常的编写模式,也相遇插入模式):


Linux下安装软件的方案:

  1. 源代码安装

  2. rpm包安装

  3. 包管理器进行安装:yum(centos)/apt(ubuntu)

包管理器相当于手机的应用商店,将软件放在远端机器上,通过指令进行下载。

包管理器:通过提供一个集中的平台或工具集,使得用户能够方便地管理系统中的软件包。它通常包含以下核心功能:

  1. 安装:用户可以通过包管理器轻松安装所需的软件包,无需手动下载和配置。

  2. 下载:

  3. 更新:包管理器能够检测并提供最新版本的软件包,同时自动更新已安装的软件包,确保系统的最新状态。

  4. 卸载:用户可以方便地卸载不再需要的软件包,释放系统资源。

  5. 依赖解决:包管理器能够自动解决软件包之间的依赖关系,确保安装的软件包能够正常运行。这是包管理器的一个重要功能,因为它大大简化了依赖关系的管理。

  6. 版本管理:包管理器可以处理不同软件包版本之间的冲突,确保系统的稳定性和一致性。

对于操作系统的理解:

操作系统的生态问题:

我们将人群、社区、文档、问题等称为操作系统的生态问题。一个操作系统有没有人用,使用的人群是学生、工程师、黑客或者其他。操作系统有没有自己完善的社区、社区中的人群有没有积累足够文档,文档中有没有反馈出足够的多的问题,这些问题有没有给出解决方案

什么是好的操作系统(os):

评价一款操作系统的好坏时,要看它的生态,生态好的操作系统就是好操作系统

重新理解centos VS ubnutu VS kail:

这三个操作系统不同之处的核心并不是它们的核心不同,而是它们的生态不同,使用人群的定位不同

关于yum:

yum源配置文件的路径:/etc/yum.repos.d/、

centos下,最核心最基础的文件:

在该文件中,有yum源对应的镜像链接

软件源分为”稳定软件源“和”扩展软件源“。那些稳定运行没安全隐患的软件会放到稳定软件源中,除去稳定软甲源,还要扩展软件源。扩展软件源中放新开发的软件。

”epel.repo“就是扩展软件源,若没有这个软件源,可以输入:yum install -y epel-release进行安装,普通用户需要用sudo进行提权

 用 yum 安装软件(安装和卸载软件一定要有root权限):

查看所有可安装的软件包:
  • yum list

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

    例如:

  • 「yum」 list | 「grep」 sl

    卸载软件:

    语法:

    • 「yum」 remove [选项] 软件名

    常见选项:

    • -y:强制下载

    下载软件

    • [yum] install [-y] xxxx

    将服务器的软件包信息缓存到本地

    • yum makecache

    清理老旧的缓存信息

    • yum clean all

    搜索包含有指定关键字的软件包

    • yum search

    只升级软件包

    • yum -y upgrade

    升级所有包同时也升级软件和系统内核

    • yum -y update

平时用的vs2022,它是叫做ide,是一个集成开发软件,将写代码、编译代码一系列操作集成到一个软件中去,在linux下,写代码与编译代码等其他操作是分开的,分别有对应的工具,工具之间都是独立的

所有的工具本质都是命令

关于vim(安装vim指令:yum -y install vim):

什么是vim:

  • vim是一个专注的编辑器,vim只负责代码编写。定位与记事本、vscode是一样的

  • vim是支持多模式的编辑器

vim的多模式:

vim有十几种模式,核心用的就5种,最常用的就三种

命令模式(是vim的核心和精华)

插入模式

底行模式

命令模式(打开vim默认所处的模式,命令模式提供许多编辑指令,这些编辑命令帮助我们提高编写效率):
光标定位:

gg:光标定位到最开始

shift+g:光标定位到文本末尾

行号+gg/行号+shift+g:光标定位到指定行

锚点定位:
shift+^:光标定位到行首shift+$:光标定位到行结尾

hjkl:让光标左下上右(为什么不直接使用上下左右键:在老式键盘中没有上下左右键,vim是在这种环境下开发的,同时vim更新时要保持向前兼容,所以现在既支持hjkl又支持上下左右键)

w:让光标以单词为单位进行后移

b:让光标以单词为单位进行前移

n+w/b:让光标以n个单词为单位进行前后移

撤销命令:

u:撤销操作(只要不退vim,一直可以撤销)

ctrl+r:对u进行撤销(只要不退vim,都可以撤销)

其他命令:

yy:复制当前行

n+yy:复制n行

p:粘贴当前行的下一行

n+p:粘贴n行

dd:剪切当前行(也能+n)

shift+zz:保存并退出vim

底行命令(shift+:进入底行模式):

w:保存文本内容

q:退出vim

set nu:显示行号

set nonu:隐藏行号

/xxx:查找xxx(按n跳转到下一个符合搜索条件的位置)

!指令:执行指令

vs:vim进行分屏操作

ctrl+ww:vim分配操作下,光标移动到下一个屏幕

全局替换:%s/要替换的部分/替换后的部分/g(g表示全局)

p 用于打印指定区间的行:[range]p [flags]

i 在指定行上方添加文本:{range}i[nsert][!]

替换模式:

shift+r:进入替换模式

视图模式:

批量注释:

ctrl+v →hjkl选择范围→shift+i→输入//→esc

全文注释:

光标移到最开始(gg)→ctrl+v→shift+g→shift+i→输入//→esc

批量化取消注释:

ctrl+v→hjkl选择范围→d

批量化插入:

ctrl+v →hjkl选择范围→shift+i→输入文本→esc

查找历史命令:

ctrl+r:查找历史命令

!命令的头字母:执行最近一次的命令

插入模式:(vs下写代码输入就是正常的编写模式,也相遇插入模式):

命令模式下按"a"、"i"、"o"

回到命名模式:按esc

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

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

相关文章

YOLO 算法详解:实时目标检测的里程碑

在计算机视觉领域,目标检测一直是一个关键且热门的研究方向,而 YOLO(You Only Look Once)算法凭借其出色的实时性和较高的检测精度,成为了目标检测算法中的明星选手。本文将深入探讨 YOLO 算法的原理、发展历程、技术优…

leetcode98.验证二叉搜索树:递归法中序遍历的递增性验证之道

一、题目深度解析与BST核心性质 题目描述 验证二叉搜索树(BST)是算法中的经典问题,要求判断给定的二叉树是否满足BST的定义: 左子树中所有节点的值严格小于根节点的值右子树中所有节点的值严格大于根节点的值左右子树本身也必须…

MathQ-Verify:数学问题验证的五步流水线,为大模型推理筑牢数据基石

MathQ-Verify:数学问题验证的五步流水线,为大模型推理筑牢数据基石 大语言模型在数学推理领域进展显著,但现有研究多聚焦于生成正确推理路径和答案,却忽视了数学问题本身的有效性。MathQ-Verify,通过五阶段流水线严格…

八股战神-JVM知识速查

1.JVM组成 JVM由那些部分组成,运行流程是什么? JVM是Java程序的运行环境 组成部分: 类加载器:加载字节码文件到内存 运行时数据区:包括方法区,堆,栈,程序计数器,本地…

Maven:在原了解基础上对pom.xml文件进行详细解读

一、pom.xml文件 就像项目管理软件 Make 的 MakeFile、Ant 的 build.xml 一样,Maven 项目的核心是 pom.xml。POM( Project Object Model,项目对象模型 ) 定义了项目的基本信息,用于描述项目如何构建,声明项目依赖,等等…

Spring Cloud项目登录认证从JWT切换到Redis + UUID Token方案

背景介绍 在传统的Spring Boot项目中,用户登录认证常见的方案是使用JWT(JSON Web Token)来实现无状态的身份验证。JWT凭借自包含用户信息、方便前后端分离、性能较好等优势被广泛采用。 然而,在实际项目中,JWT也有一…

MongoDB 快速整合 SpringBoot 示例

1.添加依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spr…

Flyweight(享元)设计模式 软考 享元 和 代理属于结构型设计模式

1.目的&#xff1a;运用共享技术有效地支持大量细粒度的对象 Flyweight&#xff08;享元&#xff09;设计模式 是一种结构型设计模式&#xff0c;它的核心目的是通过共享对象来减少内存消耗&#xff0c;特别是在需要大量相似对象的场景中。Flyweight 模式通过将对象的共享细节与…

002大模型-提示词工程,少样本提示,角色扮演,思维链

一、提示词工程 二、少样本提示 三、角色扮演 四、思维链

华为OD机试真题——传递悄悄话(二叉树最长路径问题)(2025A卷:200分)Java/python/JavaScript/C/C++/GO最佳实现

2025 A卷 200分 题型 本专栏内全部题目均提供Java、python、JavaScript、C、C++、GO六种语言的最佳实现方式; 并且每种语言均涵盖详细的问题分析、解题思路、代码实现、代码详解、3个测试用例以及综合分析; 本文收录于专栏:《2025华为OD真题目录+全流程解析+备考攻略+经验分…

「读书报告」Spark实时大数据分析

这本书是清华大学出版社2018年出版的&#xff0c;我是2020年读的&#xff0c;说真的的&#xff0c;不怎么喜欢这本书&#xff0c;所以作者我都不想提。有的人可能会奇怪&#xff0c;ailx10&#xff0c;你一个搞网络安全的&#xff0c;怎么会去读大数据相关的书&#xff0c;哎&a…

2025 河北ICPC( D. 金泰园(二分)-- C.年少的誓约(公式转化))

文章目录 2025 河北ICPCD. 金泰园&#xff08;二分&#xff09;C.年少的誓约(公式转化)总结 2025 河北ICPC 题目链接&#xff1a; Attachments - The 9th Hebei Collegiate Programming Contest - Codeforces sdccpc20250522 - Virtual Judge 赛时&#xff1a;5道 D. 金泰…

QT学习一

对于选择qmake还是cmake&#xff0c;现在写的暂时先用qmake 1.命名规范和快捷键 2.按钮控件常用API //创建第一个按钮QPushButton * btn new QPushButton;//让btn对象 依赖在mywidget窗口中btn->setParent(this);//显示文本btn->setText("第一个按钮");//创建…

【Elasticsearch】给所索引创建多个别名

Elasticsearch 是可以给索引创建多个别名的。 为什么可以创建多个别名 1. 灵活性 - 别名可以为索引提供一个更易于理解的名称&#xff0c;方便用户根据不同的业务场景或用途来引用同一个索引。例如&#xff0c;一个索引可能同时服务于多个不同的应用程序或服务&#xff0c;通…

使用 OpenCV 实现哈哈镜效果

在计算机视觉和图像处理领域&#xff0c;OpenCV 提供了非常强大的图像几何变换能力&#xff0c;不仅可以用于纠正图像&#xff0c;还能制造各种“有趣”的视觉效果。今天&#xff0c;我们就来实现一个经典的“哈哈镜”效果&#xff0c;让图像像在游乐园里一样被拉伸、压缩、扭曲…

AI|Java开发 IntelliJ IDEA中接入本地部署的deepseek方法

目录 连接本地部署的deepseek&#xff1a; IntelliJ IDEA中使用deepseek等AI&#xff1a; 用法一&#xff1a;让AI写代码 用法二&#xff1a;选中这段代码&#xff0c;右键&#xff0c;可以让其解释这段代码的含义。这时显示的解释是英文的。 连接本地部署的deepseek&#…

如何使用两块硬盘作为 Ubuntu24 的系统盘,实现坏掉一块不影响系统运行。

最近我想使用Ubuntu组一个NAS系统&#xff0c;想实现系统盘冗余&#xff0c;各位大佬可以给点建议吗。 Deep Seek 为了实现两块硬盘作为 Ubuntu 24 系统盘的冗余配置&#xff08;RAID 1&#xff09;&#xff0c;确保一块硬盘损坏时系统仍可运行&#xff0c;以下是详细步骤&am…

【2025最新】虚拟机安装macos,VMware在Windows11上安装macOS 15完整图文教程 - 新手也能轻松上手

引言 想体验苹果系统但不想买Mac电脑&#xff1f;别担心&#xff01;本教程将手把手教你如何在Windows11环境下&#xff0c;通过VMware虚拟机安装macOS Sequoia15系统。即使你是零基础小白&#xff0c;按照这个步骤操作&#xff0c;也能轻松搞定&#xff01; 准备工作 在开始…

论文阅读笔记——Emerging Properties in Unified Multimodal Pretraining

BAGEL 论文 商业闭源系统与学术/开源模型的差距很大&#xff0c;BAGEL 旨在通过开源统一架构大规模交错数据主要解决&#xff1a; 架构割裂&#xff1a;理解/生成分属两条网络&#xff0c;信息被压缩在少量条件 token 中&#xff0c;长上下文推理受限。数据贫乏&#xff1a;主…

Go 语言基础1 Slice,map,string

更多个人笔记见&#xff1a; github个人笔记仓库 gitee 个人笔记仓库 个人学习&#xff0c;学习过程中还会不断补充&#xff5e; &#xff08;后续会更新在github上&#xff09; 文章目录 stirng 字符串区分 rune&#xff0c;byte&#xff0c;string字符串操作strings 库相关 f…