【Linux第一彈】Linux基礎指令(上)

??

目錄

?1.ls指令

?1.1 ls使用實例

?2.pwd指令

3.cd指令?

3.1 cd使用實例

4.touch指令?

4.1touch使用實例?

5.mkdir指令

5.1mkdir使用實例

6.rmdir指令和rm指令

6.1 rmdir指令使用實例->:

?6.2 rm指令使用實例

7.man指令

8.cp指令

8.1 cp 使用實例

9.mv指令

9.1mv使用實例

10.cat指令

10.1cat使用實例

11.完結


每一個存在都有問鼎的機會


?1.ls指令

語法:ls [選項] [目錄或文件]

功能:1.對于目錄,列出該目錄下所有子目錄與文件

? ? ? ? 2.對于文件,將列出文件名以及其他信息

注:所有的指令的選項都是在其基礎上增加新的功能(并不會覆蓋舊功能)

這里我想說的是不要看常用選項中沒有寫目錄就以為不會列出目錄


常用選項->:

-a 列出目錄下的所有文件,包括以 . 開頭的隱含文件
-d 將目錄像文件一樣顯示,而不是顯示其下的文件。 如: ls –d 指定目錄
-i 輸出文件的 i 節點的索引信息。 如 ls –ai 指定文件
-k 以 k 字節的形式表示文件的大小。 ls –alk 指定文件
-l 列出文件的 詳細信息 。
-n 用數字的 UID,GID 代替名稱。 (介紹 UID , GID )
-F 在每個文件名后附上一個字符以說明該文件的類型, “*” 表示可執行的普通文件; “/” 表示根目錄.
“@” 表 示符號鏈接;“|” 表示 FIFOs ; “=” 表示套接字 (sockets) 。(目錄類型識別)
-r 對目錄反向排序。
-t 以時間排序。
-s 在 l 文件名后輸出該文件的大小。(大小排序,如何找到目錄下最大的文件)
-R 列出所有子目錄下的文件。 ( 遞歸 )
-1 一行只輸出一個文件。

?1.1 ls使用實例

單獨使用 ls 講解->:

這里的pwd是展示當前所處目錄,我們使用ls意味著展開/root中的文件或目錄,圖片上展開的是root中的112目錄(這里的112是自己創建的目錄,如何創建后面會講)


ls -a?講解->:

我們會發現,使用ls -a會多了許多東西,這些其實都是隱藏文件,因為它們都帶有隱藏文件的標識符,也就是一個小點,以小點開頭的就代表了隱藏文件

所以,-a 的作用是,展示當前目錄下的文件/目錄(包含隱藏文件)


ls -l 講解->:

這里多出來的部分其實是文件/目錄的詳細信息,也就是說 -l 會列出文件的詳細信息

我們可以觀察到詳細信息是以d開頭的,這意味著它是一個目錄

如果是文件,它的詳細信息就不是d開頭的


ls?-n 講解->:

我們會發現兩處有些不同,這是因為 -n 的作用是列出詳細的信息時用數字的UID,GID代替名稱(這里先不用管UID,GID)


注意:在Linux中,選項的順序并不會影響實際效果,這就意味著我們可以一起使用,如下->:

我們會發現,它既打印出來隱藏文件,又打印出了詳細信息,并且二者的結果一樣,說明順序不影響。

當然我們也可以使用 ls -aln,并不會有選項的數量限制

?2.pwd指令

pwd指令很簡單,它的作用就是展示當前所處目錄(不展示文件)

如圖,我們當前處于root目錄下

3.cd指令?

語法: cd 目錄名

功能: 改變工作目錄,將當前目錄改變到指定目錄下


由于cd的語法很少,我們直接舉例展示


我們先講一個知識點

在Linux下,所有的目錄/文件都是從根目錄開始的,因此我們可以順著一條線找到目錄或文件

而根目錄的標識就是一個斜杠 /

3.1 cd使用實例


用法一: cd 絕對路徑

接下來我們會細致的分析cd絕對路徑,在使用cd絕對路徑時,需要一層一層的寫絕對路徑,我們用圖片展示->:

這里我們知道,root是根目錄下的目錄,因此我們可以直接跳到root目錄

當然我們也可以這樣寫->:

這里最開始寫上的?/ 代表從根目錄開始走,跳到根目錄下的root目錄,而上一種寫法的意義為在當前目錄下查找root目錄,如果查找到了則進行跳轉,否則報錯


(?/只有在路徑的開頭時代表根目錄,其余都表示分隔符)


接下來我們想跳到root下的112目錄,我們可以這樣寫->:

我們發現我們使用/112會報錯,這是因為 / 代表從根目錄下開始查找,而我們不加 / 后,就會從當前目錄下開始查找能否跳轉,也就會成功

我們可以從root直接找到112嗎?

這就要看我們怎么寫了,如下圖->:

可見,直接在根目錄下找112是找不到的,會報錯,而先進入root再進入112,就可以跳到112了


cd 可以跳到文件里嗎?不可以,因為我們在功能上說了,它是跳到目錄下

有道友問了?我們那么多文件,我怎么知道文件都叫什么啊?

這時就要用到 ls指令 了啊,用ls列表出當前目錄下的所有文件,就知道都叫什么了


用法2: cd 相對路徑

相對路徑有兩種,一種為 .. ——? 一種為 . 沒錯,你沒看錯,就是點,兩個點代表上級目錄或文件,一個點代表 當前目錄/文件,我們展示一下->:

我們可以看到,cd .代表跳到當前目錄,也就是沒跳別的地方,pwd也就沒改變,

cd .. 代表跳到上級目錄,也就從112中跳出去了,跳到了root


用法3: cd 相對路徑+絕對路徑

相對路徑和絕對路徑可以一起使用,如下->:

這里我們細致的講一下如何實現的

我們首先看紅色的,我們使用相對路徑跳到上級目錄,然后又執行了 /lesson2 , 此時,這里的/就不代表從根目錄下查找,因為你一種是相對路徑一種是絕對路徑,/ 就相當于變為了一種分隔符類似的,變成了代表從當前目錄下查找

所以實際上執行的是,先跳到上級目錄(跳到目錄112中),然后在目錄112中查找lesson2目錄


cd ../..,這是因為兩個上級目錄不可以連續使用,如cd ....,所以 / 也變成了一個分隔符,它是先跳到了上級目錄112中,然后從112中跳到了root


用法4: cd /

我們上面提到過,/ 是根目錄,而cd / 可以直接跳到根目錄下,如下圖->:


用法5: cd ~

cd ~ 可以讓我們直接跳到家目錄下,什么是家目錄?就是我們當前用戶的目錄

如下圖->:


用法6: cd -?

cd - 可以退回到上一次的所在目錄,如下圖->:

4.touch指令?

語法: touch [選項] [文件]

功能 : 命令參數可更改文檔或目錄的日期時間,包括存取時間和更改時間,或者新建一個不存在的文件


常用選項->:

-a : 只改變access time

-c : 只改變modification time

4.1touch使用實例?

用法1 ->: touch 文件名

我們先觀察到,lesson2中并沒有任何文件或目錄,我們在當前目錄下touch創建一個test2的文件,再用ls展開當前目錄,發現,確實創建了,并通過ls -l 詳細的看到確實是文件


nano +普通文件名字

指令:通過nano指令可以進入文件寫代碼;

輸入nano test2后,我們會進入下面的畫面

如果寫完了可以使用 ctrl + x 進行保存,之后在最下面會彈出一個選項,摁Y確認,再摁回車保存即可

之后我們可以使用cat指令輸出文件內容(后面講cat指令)

5.mkdir指令

語法: touch [選項] dirname

功能 : 在當前目錄下創建一個名為 "dirname" 的目錄


常用選項->:

-p :可以一次建立多個目錄

5.1mkdir使用實例

用法1->: mkidr 目錄名

我們可以觀察到,最開始的lesson2目錄中只有一個test2文件,而我們mkdir后,新增了兩個目錄,這就是mkdir的使用


mkdir可以直接創建多個目錄,如下->:


用法2->: mkdir -p 目錄名/目錄名/目錄名/.......

但是,mkdir不可以直接遞歸創建多個文件,如下->:

解釋一下,我們想在112中創建一個color目錄,在color目錄中創建一個red目錄,在red目錄中創建一個blue目錄,但是直接用mkdir不可以創建,報錯了,這是因為我們沒有使用-p選項

我們使用mkdir -p 后,可以發現,遞歸創建成功了。這就是mkdir -p 的使用

6.rmdir指令和rm指令

rmdir?是一個與?mkdir?相對應的命令。?mkdir?是建立目錄,而?rmdir?是刪除命令。

語法: rmdir [-p] [dirName]

使用對象: 具有當前目錄操作權限的所有使用者

功能: 刪除空目錄


常用選項:

-p 當子目錄被刪除后如果父目錄變為空目錄的話,就連帶父目錄一起刪除(即遞歸刪除)


rm?命令可以同時刪除文件或目錄

語法?:?rm [-f-i-r-v][dirName/dir]

適用對象?:所有使用者

功能?:刪除文件或目錄

6.1 rmdir指令使用實例->:

用法1: rmdir 目錄名

使用rmdir可以刪除指定目錄,但是有一些注意事項,我們下面講:


看下圖->:我們使用rmdir時有三種情況不可以刪

第一種情況 ->: 刪掉當前所在目錄

第二種情況->: 刪除所有上級目錄

第三種情況->: 想要刪除的目錄中存在目錄/文件

我們接下來舉例,看下圖->:

下圖中,我們

這張圖說明的是前兩種情況,接下來的圖是第三種情況:

我們想要刪除112里面的color目錄,但是因為color目錄中存在東西,所以不可以刪除此目錄


用法2: rmdir -p 目錄名/目錄名/......

我們上述中無法直接刪除color目錄,難到我們要一步一步進去刪再一步一步出來嗎?

沒這個必要,使用rmdir -p 遞歸刪除,直接實現,如下圖->:

可以觀察到,color目錄被全部刪除了

?6.2 rm指令使用實例

用法1: rm -r?文件名/目錄名

首先,rm的刪除與rmdir類似,都是不可以刪除當前目錄或者一切的上級目錄

但是如果rm刪除的目錄中存在其他東西,是可以刪除的

效果如下->:

我們講解一下上圖,(別看話長但很簡單)首先我們觀察到,big目錄中存在一個文件test999,我們返回上級目錄112,接著刪除big目錄,它問我們,確定要刪除big目錄嗎?我們回答y(yes),接著,它檢測到big目錄中存在test999文件,它就會又問我們,要刪除test999文件嗎?(因為如果不刪除此文件,無法刪除目錄),我們回答yes。那么文件刪掉了,它會遞歸回來,問我們確定要刪除big目錄嗎?我們再回答y,此時成功刪掉了。

聲明: 不刪除回答n


用法2: rm -rf 文件名/目錄名

使用rm -rf可以無視文件權限,直接刪除目錄/文件,也就是不會再詢問你,如下圖->:


用法3: rm 文件名

使用rm 文件名可以刪除文件,但是不可以刪除目錄,如下->:

可以觀察到,rm直接加文件是不可以刪除的,因為rm刪除文件需要使用rm -r,但是rm 文件名可以刪除文件

7.man指令

語法: man [選項] 命令

功能: 查找命令如何使用


常用選項:

-k 根據關鍵字搜索聯機幫助

num 只在第num章節查找

-a 將所有章節顯示出來,比如man printf 它缺省從第一章開始搜索,知道就停止,用a選項,當摁下q退出,他會繼續往后面搜索,直到所有章節都搜索完畢


解釋一下 ,man 手冊分為8章
1 是普通的命令
2 是系統調用 , 如 open,write 之類的 ( 通過這個,至少可以很方便的查到調用這個函數,需要加什么頭文件)
3 是庫函數 , 如 printf,fread4 是特殊文件 , 也就是 /dev 下的各種設備文件
5 是指文件的格式 , 比如 passwd, 就會說明這個文件中各個字段的含義
6 是給游戲留的 , 由各個游戲自己定義
7 是附件還有一些變量 , 比如向 environ 這種全局變量在這里就有說明
8 是系統管理用的命令 , 這些命令只能由 root 使用 , 如 ifconfig

8.cp指令

語法: cp [選項] 源文件或目錄? 目標文件或目錄

功能: 在當前目錄下查找,并復制文件或目錄


說明:

cp 指令用于復制文件或目錄

如同時指定兩個以上的文件或目錄,且最后的目的地是一個已經存在的目錄,則它會把前面指定的所有文件或目錄復制到此目錄中


常用選項:

-f 或 --force ?強行復制文件或目錄, 不論目的文件或目錄是否已經存在
-i 或 --interactive 覆蓋文件之前先詢問用戶
-r 遞歸處理,將指定目錄下的文件與子目錄一并處理。若源文件或目錄的形態,不屬于目錄或符號鏈接,則一律視為普通文件處理

8.1 cp 使用實例

用法1: cp -r 源目錄/文件 目標目錄/文件

首先我們看一下下圖,觀察到112目錄下有許多目錄,我們想要實現目錄的復制或者文件的復制就需要使用cp -r

比如,我們現在就想把lesson1目錄復制進lesson2目錄中,我們可以這樣寫:

可見,lesson1被復制到lesson2中了

額外補充:如果cp的目標文件/目錄不存在,則會自己創建一個目標文件/目錄,如下圖->:


用法2: cp -i? 文件名

上述講解中,如果有同志自己嘗試會發現cp其實沒有 -r 是不可以復制目錄的(源文件是目錄不可以,目標目錄無所謂),但是cp -r 既可以操作目錄又可以操作文件,所以這里沒有講解,只需要記住無時無刻加 -r 即可

cp -i 的作用為在覆蓋文件之前先詢問用戶,注意,我說的是 "覆蓋"?,不是復制

覆蓋是文件名重復的意義,如下->:

這里lesson1中的apple復制到lesson2中的apple就屬于覆蓋,加-i會在拷貝前詢問你(其實不加也會詢問)

9.mv指令

語法: mv [選項] 源文件或目錄 目標文件或目錄?

功能:?

1. 視 mv 命令中第二個參數類型的不同(是目標文件還是目標目錄), mv 命令將文件重命名或將其移至一個新的目錄中。
2. 當第二個參數類型是文件時, mv 命令完成文件重命名,此時,源文件只能有一個(也可以是源目錄名),它將所給的源文件或目錄重命名為給定的目標文件名。
3. 當第二個參數是已存在的目錄名稱時,源文件或目錄參數可以有多個, mv 命令將各參數指定的源文件均移至目標目錄中。


常用選項?:

-f??:?force??強制的意思,如果目標文件已經存在,不會詢問而直接覆蓋

-i??:若目標文件??(destination)??已經存在時,就會詢問是否覆蓋!

9.1mv使用實例

用法1: mv 文件/目錄名 文件/目錄名(重命名功能)

mv 文件名 文件名可以實現文件名的重定義,也就是改名(即覆蓋),這里演示一下

如圖,我們將apple文件的名字更改為了peach


如果我們改的名字與別的文件名字重復了,那就會實現覆蓋,演示一下->:

將peach更改為apple會進行覆蓋,還詢問了我們一下


用法2: mv 文件/目錄 路徑(轉移功能)

可見,將lesson1中的apple文件轉移到了上級目錄中

再看一個->:


用法3: mv?文件名 路徑+新名字

這個指令會將兩個操作同時進行,結果就是轉移到了新路徑下并且更換了名字

將lesson2目錄轉移到了root目錄下

10.cat指令

語法: ?cat [?選項?][?文件?]

功能:??查看目標文件的內容


常用選項?:

-b?對非空輸出行編號

-n?對輸出的所有行編號

-s?不輸出多行空行

10.1cat使用實例

用法1: cat 文件名

11.完結

2a775d9141e049b28a499aa8c5166913.png

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

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

相關文章

RabbitMQ系列(七)基本概念之Channel

RabbitMQ 中的 Channel(信道) 是客戶端與 RabbitMQ 服務器通信的虛擬會話通道,其核心作用在于優化資源利用并提升消息處理效率。以下是其核心機制與功能的詳細解析: 一、Channel 的核心定義 虛擬通信鏈路 Channel 是建立在 TCP 連…

Zookeeper(80)Zookeeper的常見問題有哪些?

Zookeeper作為分布式系統的協調服務,常見的問題主要集中在配置、性能、連接管理、數據一致性和節點故障等方面。以下是一些常見問題及其詳細解決方法和代碼示例。 1. 配置問題 問題描述 配置不當可能導致 Zookeeper 集群無法正常啟動或運行效率低下。 解決方法 …

如何管理路由器

一、管理路由器的必要性 1、需要修改撥號上網的密碼。 2、需要修改WIFI的SSID名字和密碼。 3、設置DHCP協議信息。 4、設置IP地址的過濾規則。 5、給某個設備連接設置網絡限速。 二、常見的方式 (一)web網頁方式 1、計算機用雙絞線或者WIFI的方式連接路由器。 2、在計算機中打開…

linux vim 撤銷 回退操作

在Linux的vim編輯器中,撤銷和回退操作是非常基本的,但它們可以通過不同的方式實現,具體取決于你想要的精確效果。下面是一些常用的方法: 1. 撤銷(Undo) 單個撤銷: 你可以通過按下u鍵來撤銷上一…

淺談流媒體協議以及視頻編解碼

流媒體協議介紹 流媒體協議用于傳輸視頻、音頻等多媒體數據,確保數據流暢地傳輸到用戶設備。常見的流媒體協議包括 RTMP、HLS、DASH、WebRTC 等,每種協議具有不同的特點和適用場景。 1. RTMP (Real-Time Messaging Protocol) 定義:由 Adob…

AF3 DataPipeline類process_multiseq_fasta 方法解讀

AlphaFold3 data_pipeline 模塊DataPipeline類的 process_multiseq_fasta 方法用于處理多序列 FASTA 文件,生成 AlphaFold3 結構預測所需的特征,適用于多鏈復合物的預測。它結合了 Minkyung Baek 在 Twitter 上提出的“AlphaFold-Gap”策略,即通過在多鏈 MSA 中插入固定長度…

圖片爬取案例

修改前的代碼 但是總顯示“失敗” 原因是 修改之后的代碼 import requests import os from urllib.parse import unquote# 原始URL url https://cn.bing.com/images/search?viewdetailV2&ccidTnImuvQ0&id5AE65CE4BE05EE7A79A73EEFA37578E87AE19421&thidOIP.TnI…

使用自動化運維工具 Ansible 集中化管理服務器

一、概述 Ansible 是一款為類 Unix 系統開發的自由開源的配置和自動化工具 官方網站:https://www.ansible.com/ Ansible 成立于 2013 年,總部設在北卡羅來納州達勒姆,聯合創始人 ad Ziouani 和高級副總裁 Todd Barr都是紅帽的老員工。Ansible 旗下的開源軟件 Ansible 十分…

CMU15445(2023fall) Project #2 - Extendible Hash Index 匠心分析

胡未滅,鬢已秋,淚空流 此生誰料 心在天山 身老滄州 ——訴衷情 完整代碼見: SnowLegend-star/CMU15445-2023fall: Having Conquered the Loftiest Peak, We Stand But a Step Away from Victory in This Stage. With unwavering determinati…

P1706 全排列問題

題目描述 按照字典序輸出自然數 1 到 n 所有不重復的排列,即 n 的全排列,要求所產生的任一數字序列中不允許出現重復的數字。 輸入格式 一個整數 n。 輸出格式 由 1~n 組成的所有不重復的數字序列,每行一個序列。 每個數字保留 5 個場寬。…

會話與會話管理:Cookie與Session的深度解析

一、什么是會話? 二、Cookie:客戶端存儲技術 1. Cookie的工作原理 2、在后端設置cookie 3、在前端設置cookie 三、瀏覽器開啟了cookie禁用怎么辦? 一、什么是會話? 會話(Session)是指一個用戶與服務器之間…

【Linux系統】—— 馮諾依曼體系結構與操作系統初理解

【Linux系統】—— 馮諾依曼體系結構與操作系統初理解 1 馮諾依曼體系結構1.1 基本概念理解1.2 CPU只和內存打交道1.3 為什么馮諾依曼是這種結構1.4 理解數據流動 2 操作系統2.1 什么是操作系統2.2 設計OS的目的2.3 操作系統小知識點2.4 如何理解"管理"2.5 系統調用和…

算法-二叉樹篇15-最大二叉樹

最大二叉樹 力扣題目鏈接 題目描述 給定一個不重復的整數數組 nums 。 最大二叉樹 可以用下面的算法從 nums 遞歸地構建: 創建一個根節點,其值為 nums 中的最大值。 遞歸地在最大值 左邊 的 子數組前綴上 構建左子樹。 遞歸地在最大值 右邊 的 子數組后綴上 構建…

運維Apache面試題及參考答案

目錄 簡述 Apache Web 服務器的主要特點及適用場景 Apache 的默認監聽端口是什么?如何修改為其他端口? Apache 的主配置文件名稱及路徑是什么?不同 Linux 發行版的默認路徑有何差異? 解釋 Apache 的 MPM(Multi-Processing Module)機制,列舉常見的工作模式(如 prefor…

51c自動駕駛~合集52

我自己的原文哦~ https://blog.51cto.com/whaosoft/13383340 #世界模型如何推演未來的千萬種可能 駕駛世界模型(DWM),專注于預測駕駛過程中的場景演變,已經成為追求自動駕駛的一種有前景的范式。這些方法使自動駕駛系統能夠更…

用大白話解釋緩存Redis +MongoDB是什么有什么用怎么用

Redis和MongoDB是什么? Redis:像你家的“小冰箱”,專門存高頻使用的食物(數據)。它是基于內存的鍵值數據庫,讀寫速度極快(每秒超10萬次操作)。比如你每次打開手機App,用…

自然語言處理:詞頻-逆文檔頻率

介紹 大家好,博主又來給大家分享知識了。本來博主計劃完成稠密向量表示的內容分享后,就開啟自然語言處理中文本表示的講解。可在整理分享資料的時候,博主發現還有個知識點,必須得單獨拎出來好好說道說道。 這就是TF-IDF&#xf…

架構思維:架構的演進之路

文章目錄 引言為什么架構思維如此重要架構師的特點軟件架構的知識體系如何提升架構思維大型互聯網系統架構的演進之路一、大型互聯網系統的特點二、系統處理能力提升的兩種途徑三、大型互聯網系統架構演化過程四、總結 引言 在軟件開發行業中,有很多技術人可能會問…

DeepSeek-R1-Zero:基于基礎模型的強化學習

注:此文章內容均節選自充電了么創始人,CEO兼CTO陳敬雷老師的新書《自然語言處理原理與實戰》(人工智能科學與技術叢書)【陳敬雷編著】【清華大學出版社】 文章目錄 DeepSeek大模型技術系列四DeepSeek大模型技術系列四》DeepSeek-…

Metal學習筆記八:紋理

到目前為止,您已經學習了如何使用片段函數和著色器為模型添加顏色和細節。另一種選擇是使用圖像紋理,您將在本章中學習如何操作。更具體地說,您將了解: ? UV 坐標:如何展開網格,以便可以對其應用紋理。 ?…