Linux基礎開發工具

目錄

1.寫在前面

2.權限

3.file命令

4.基礎開發工具

1.軟件包管理器

5.編輯器vim


1.寫在前面

我們在上一講解中講解了權限是人+事物屬性,還知道了擁有者所屬組其他人這三個概念,知道了33一組,rwx分別代表什么。那么下面我們繼續進行權限的講解并了解Linux下基礎的開發工具吧。

2.權限

我們知道了文件的權限rwx分別代表讀寫執行,但是目錄的權限rwx分別代表什么呢?

我們知道Linux下一切皆文件,所以目錄也是一個文件,但是它和我們普通的文件不一樣,目錄是可以存目錄和文件,所以我們了解一下目錄的rwx權限分別是什么

目錄的w代表用戶是否可以修改或者刪除執行目錄下的文件。

x代表我們是否可以進入目錄。

r代表我們是否可以查看這個目錄。

我們普通用戶可以在自己創建的目錄下刪除root賬戶創建的文件?有的同學就要問了,root不是擁有最高權限嗎?你怎么能刪除root創建的文件呢?root不是不受權限的制約嗎?這個問題反過來想,你的root憑什么在我的目錄下創建文件呢?

普通用戶的家目錄只有自己和root能夠進入,其他人進入需要密碼。

但是如果我想要多個普通賬號進行數據共享呢?

那么由于我普通用戶只能進入自己的家目錄不能進入別人的家目錄所以我們不能在普通用戶的目錄下創建一個目錄進行共享。

所以我們得讓root在公共目錄下,普通人以other身份實現數據共享。但是問題來了上面我們講了刪除目錄只需要有w的權限就可以,那我在這個目錄下創建一個文件,但是別人可以隨意刪除這不是不行嗎?那么如果我們不想讓別人刪除我們的文件呢?

我們可以去掉other的w權限,但是與此同時我們也不能新建文件了,這也不行。

那么我們怎么樣做到自己既能新建文件,但是不能讓別人刪除我的文件呢?

這里現有的方法我們還欠缺,所以我們引入了粘滯鍵來解決這個問題,這樣做的效果就是只有文件的擁有者和root可以刪除文件,其他人刪不掉

所以通過粘滯位我們就解決了我們擔心的別人誤刪自己文件的誤操作了。

3.file命令

file +filename 我們可以查看這個文件更詳細的信息。

4.基礎開發工具

1.軟件包管理器

Linux下我們如何進行軟件安裝,查找下載呢?

1.我們可以進行源代碼安裝。

2.我們rpm安裝方式安裝包的本質就是把源代碼在windows下編譯好,然后打包,但問題是我們有些軟件是存在依賴關系的,就需要我們人工去解決,對我們初學的人十分不友好。

3.所以我們使用yum、apt工具級安裝,不僅會把軟件給你安好,還會把依賴關系給你解決。

相當于我們的應用商店。這就對我們新人十分友好,不然很有可能出現去百度搜索下載下載一大堆垃圾軟件的情況。

有一個問題是我們安卓上有人來開發軟件上架應用商店是因為它們能夠從中獲利,但是Linux呢?

Linux的軟件也是由開發者或者公司開發的,Linux是開源的,這些開發者憑什么給我們來開發軟件呢?比如ls這些指令等等。

那是因為生態問題,Linux的軟件生態問題,一個操作系統的好與壞并不是從單一角度去評價的,而是多方來決定的,比如我們的社區論壇,官網文檔,軟件體系,維護更新速度,操作系統自身,富有針對性的客戶群體,這些都是非常重要的因素,不如針對工作員的Linux就是centos,針對學生群體就有別的對應的系統。

開發軟件和操作系統的人需要做好這些方面,他需要去維護官網論壇,去更新操作系統自身,去構建對應的軟件體系,去明白自己針對的客戶群體。

比如最近非常火的華為鴻蒙系統,其實不僅僅是單純的操作系統之爭,背后更大的其實還是操作系統的生態之爭。

所以人們就愿意去付費使用,企業得以盈利,又能有動力開發出越來越好得軟件。

我們還需要了解我們下載的軟件到底是怎么回事。

首先我們要知道,安裝軟件要以超級用戶的身份進行安裝,拷貝下來的軟件到指定的目錄下。

現在我們的AI十分發達我們可以去問AI來幫助我們。

那么我們怎么知道我們要下載那些軟件?哪些軟件有啥功能?這些都是由需求驅動的。

我們的軟件都是在遠端的,原來我們的軟件包都是在國外的服務器,但是國內正常情況無法訪問外網,所以我們一些企業和學習就把國外的鏡像在國內搭建,所以我們安裝就是,查找發送下載請求,然后進行下載返回。我們之所能快速找到軟件包的位置是因為我們配置文件存在下載鏈接。

5.編輯器vim

vim是一個編輯器,多模式的編輯器,它有多種模式,現在我們先介紹三種模式,分別是命令模式,插入模式,底行模式。

它們之間的切換都是按esc退回命令模式然后再按相應按鍵進行切換。

退出按shift+;其實就是:。切換到底行模式,按q退出。

打開的話就是vim +filename

快捷鍵退出并保存:shifit+zz

vim code.c+4.打開的時候光標在第4行,這個的話當我們文件有錯誤時報錯會報行數,我們直接進行定位即可。

命令模式下,鍵盤文件的輸入默認被當命令來對待。

yy是復制,p是粘貼。

50+p是粘貼50次

5=yy是復制5行。

這里說明一下幾乎所有vim的命令下,我們幾乎都可以在命令前+數字,進行相應次數的操作。

示范一下:

gg是定位到最開始,shift+g是定位到結尾。

定位到任意一行是:n+shift+g 定位到第n行。

我們這是行之間移動。那我在一行怎么進行列移動,shift+6當前行開頭,shift+4行結尾。

hjkl是上下左右移動。

h左移,j下移,k上移,l是右移。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/90775.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/90775.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/90775.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ICCV2025 特征點檢測 圖像匹配 RIPE

目測對剛性物體效果比較好代碼:https://github.com/fraunhoferhhi/RIPE 論文:https://arxiv.org/abs/2507.04839import cv2 import kornia.feature as KF import kornia.geometry as KG import matplotlib.pyplot as plt import numpy as np import torc…

Ubuntu22.0.4安裝PaddleNLP

Ubuntu22.0.4安裝PaddleNLP環境說明安裝底層框架Paddle安裝PddleNLP1. pip安裝2. 驗證安裝3. 最后問題集錦環境說明 1. miniconda 25.5.1 2. python 3.12.11 3. pip 25.1 4. nvidia 570.144 5. cuda 12.8**注意:**安裝過程可能遇到的一些問題,參考末尾的…

【HTTP服務端】Cookie?Session?Token?

文章目錄cookie與sessiontoken什么是JWT?JWT的組成結構1. Header(頭部)2. Payload(負載)3. Signature(簽名)JWT工作原理JWT的特點安全注意事項cookie與session cookie有哪些屬性 鍵值對&#xf…

安裝Git

Git安裝避坑指南技術 操作系統選擇與準備 Windows用戶需注意系統版本兼容性,建議使用Windows 10及以上版本 Mac用戶需檢查是否安裝Xcode Command Line Tools Linux用戶需區分apt/yum等包管理器命令差異 安裝包下載注意事項 從官方渠道(git-scm.com&a…

UDP服務器的優缺點都包含哪些?

UDP協議不需要像TCP協議那樣進行復雜的連接建立與拆除過程,在進行傳輸數據信息的過程中,應用層將數據交給UDP層,UDP層直接加上首部就發往網絡層,極大地減少了處理時間和資源消耗。例如在一些簡單的網絡監控程序中,只是…

sqli-labs靶場通關筆記:第7-8關 布爾盲注

第七關1.審題這里判斷出是))閉合,但是頁面只有正確和錯誤的回顯狀態,報錯的回顯也是固定的,沒有顯示報錯具體信息。這關使用的方法是布爾盲注。為什么叫布爾盲注?因為它返回的結果只有true和false 兩個值,攻擊者需要通…

理解支持向量機(SVM):理論、數學和實現的綜合指南

支持向量機(SVMs)是強大的監督學習算法,用于分類和回歸任務,盡管它們主要用于分類。由Vladimir Vapnik及其同事在1990年代引入,SVMs基于統計學習理論,特別適用于需要將數據點穩健分離到不同類別的任務。本博…

使用Navicat對PostgreSQL數據表添加列,自動記錄當前行的添加日期

點開表設計,向如下這樣一個字段: 字段名稱可以自定義,博主這里叫做:add_date_time類型選擇:timestamp長度寫成:6默認值輸入:CURRENT_TIMESTAMP 添加行:默認值:

VR協作海外云:跨國企業沉浸式辦公解決方案

隨著全球化進程加速,VR協作海外云正成為跨國企業數字化轉型的核心解決方案。本文將深入解析這項技術如何突破地理限制,實現沉浸式遠程協作,并探討其在跨文化團隊管理、實時3D數據交互等場景中的獨特優勢。 VR協作海外云:跨國企業沉…

[ESP32]VSCODE+ESP-IDF環境搭建及blink例程嘗試(win10 win11均配置成功)

ps:這是你為了點燈最繁瑣的一次 1.軟件下載 vscode下載地址:Documentation for Visual Studio Codeesp_idf下載地址:https://dl.espressif.cn/dl/esp-idf/?idf4.4 (從上往下第三) 2.軟件安裝 可以均默認安裝,但建議不要放在C盤&…

tailwindcss詳解

Tailwind CSS 詳解:實用主義的現代 CSS 框架 Tailwind CSS 是一個功能優先(utility-first)的 CSS 框架,它通過提供低級別的實用類來快速構建自定義設計,而無需離開 HTML 文件。以下是全面解析: 一、核心概念…

[spring6: TypeFilter MetadataReader MetadataReaderFactory]-源碼解析

源碼 MetadataReaderFactory MetadataReaderFactory 是用于創建 MetadataReader 實例的工廠接口,支持通過類名或資源讀取類的元數據并可實現緩存優化。類型類/接口名功能描述是否需要加載類訪問方式抽象接口AnnotatedTypeMetadata訪問某類型(類或方法&am…

基于redis的分布式session共享管理之銷毀事件不生效問題

一、前言首先介紹下分布式session共享管理在Springboot項目中,經常提到分布式的概念,當實際部署應用后,多臺服務器各自存儲用戶登錄會話無法共享,導致操作A按鈕還是正常,操作B按鈕就提示登錄過期需要重新登錄。這是因為…

技術面試問題總結二

一、lvs的四種工作模式: LVS 有四種主要工作模式:NAT 模式、DR 模式、TUN 模式和Full-NAT 模式 1、NAT模式: 工作原理 LVS 作為客戶端和真實服務器(RS)之間的中間節點,接收客戶端請求后,修改請求的目標…

軟考(軟件設計師)軟件工程-軟件過程模型,敏捷開發

軟件過程模型 瀑布模型 #mermaid-svg-daxck2eQmqfYelkV {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-daxck2eQmqfYelkV .error-icon{fill:#552222;}#mermaid-svg-daxck2eQmqfYelkV .error-text{fill:#552222;stro…

MySQL 中圖標字符存儲問題探究:成因、解決方案及單字段編碼調整的利弊分析——仙盟創夢IDE

在 MySQL 數據庫應用中,常出現無法正確保存圖標字符,讀出時顯示為 “????” 的問題。本文深入剖析了該問題產生的原因,主要涉及字符編碼設置不匹配等因素。同時,提出了全面的解決方案,包括全局和單字段的字符編碼調…

快速上手UniApp(適用于有Vue3基礎的)

作為一位有Vue3基礎的開發者,學習UniApp將會是一個相對平滑的過程。UniApp是一個使用Vue.js開發跨平臺應用的前端框架,可以編譯到iOS、Android、H5以及各種小程序平臺。 一、UniApp簡介 UniApp是基于Vue.js的跨平臺開發框架,具有以下特點&a…

background和background-color的區別

前言:由于全局切換變量時,發現空頁面按鈕變量顏色未生效,審查元素發現變量未定義。實際上是背景色由純色變成了漸變色,而background-color不支持漸變色導致變量不生效特性backgroundbackground-color功能設置?所有?背景屬性&…

Vue Vue-route (5)

Vue 漸進式JavaScript 框架 基于Vue2的學習筆記 - Vue-route History模式和路由懶加載 目錄 History模式 設置history模式 后端配置 Apache 路由懶加載 配置 總結 History模式 設置history模式 Vue-route默認hash模式——使用URL的hash來模擬一個完整的URL&#xff0c…

家用智能攝像機PRV文件刪除的恢復方法

家用智能攝像頭一般采用的是mp4或者mov視頻方案,這一類方案文件通用性強、使用簡單,以MP4為例無論是APP在線播放還是TF卡接電腦查看都很輕松。即便如此,有些廠商還是走上了“自定義”的道路,自定義的文件結構導致無法正常播放&…