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
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/82336.shtml
英文地址,請注明出處:http://en.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…