1.Linux命令概述
1.1 Linux命令的分類
Bash是Linux操作系統中默認使用的shell程序,文件位於/bin/bash。根據Linux命令與shell程序的關係,Linux命令一般分爲以下兩種類型。
內部命令:
- 集成於 Shell 解釋器程序內部的一些特殊指令,也稱爲內建(Built-in)指令
- 屬於Shell 的一部分
- 沒有單獨對應的系統文件
- 自動載入內存,可以直接使用
外部命令:
- Linux系統中能夠完成特定功能的腳本文件或二進制程序
- 屬於 Shell 解釋器程序之外的命令
- 每個外部命令對應了系統中的一個文件
- 必須知道其對應的文件位置,由 Shell 加載後才能執行
1.2 Linux命令的格式
通用的命令行使用格式
命令字 [選項] [參數]
命令字
是整條命令中最關鍵的一部分
唯一確定一條命令
注意:Linux命令環境中,對英文字符的處理是區分大小寫的
選項
短格式選項:使用“-”符號引導多個單字符選項可以組合在一起使用
說明:結構簡單、輸入快捷
長格式選項:使用“--”符號引導
說明:意義明確,容易記憶
參數
- 命令字的處理對象
- 可以是文件名、目錄(路徑)名或用戶名等內容
- 個數可以是零到多個
2. 編輯 Linux 命令行的輔助操作
Tab 鍵:補全
反斜槓“\”:換行,輸入的命令太長時可以使用
Ctrl+U 快捷鍵:刪除當前光標之前的內容
Ctrl+K 快捷鍵:刪除當前光標之後的內容
Ctrl+L 快捷鍵:清屏,快速清空當前屏幕的顯示內容
Ctrl+C 快捷鍵:中斷,取消當前命令行的編輯
演示
Tab補全演示
Ctrl+U和Ctrl+K組合鍵演示
Ctrl+L和Ctrl+C組合鍵演示
3. 獲得命令幫助的方法
使用help 命令
如果是一個內部命令,可以使用“help 命令”來獲取命令的幫助信息。
那麼怎麼才能判斷一個命令是內部命令還是外部命令呢???
使用“type 命令”可以判斷一個命令是內部命令還是外部命令
使用“--help”選項
如果是一個外部命令,可以使用 “命令 --help”來獲取命令的幫助信息。
使用man 手冊頁
使用“man 命令”可以獲取任何命令的幫助信息
演示
4.目錄和文件基本操作
4.1查看及切換目錄
(1)pwd命令:查看當前的工作目錄(Print Working Directory)
(2)cd命令:切換工作目錄(Change Directory)
cd ~ |
切換到宿主目錄 |
cd |
|
cd - |
切換到上次目錄 |
cd .. |
切換到上一級目錄 |
(3)ls命令:列表(list)顯示目錄內容
-l:顯示詳細信息
-a:顯示所有目錄和文件信息,包括一點號“.”開頭的隱藏目錄和文件
-A:與-a相似,但兩個隱藏目錄不會顯示,即當前目錄的“.”和表示父目錄的“..”。
-d:顯示目錄的本身屬性,而不顯示目錄的內容
-h:顯示目錄和文件的大小
-R:遞歸的方式顯示指定目錄及子目錄中的所有內容
--color:深藍色:目錄;白色:一般文件;綠色:可執行文件;黃色:設備文件;紅色:壓縮文件。
提示:通過別名機制簡化常用的、比較長的命令
alias 命令別名 = 命令
如:設置myls 爲ls – alh的別名
alias myls = ‘ls – alh’
(4)du命令:統計目錄及文件的空間佔用情況
-a:統計所有文件
-h:顯示單位大小
-s:只統計每個參數所佔總空間的大小
4.2創建目錄和文件
(1)mkdir命令:創建新的目錄(Make Directory)
-p:用於創建多層目錄
(2)touch命令:創建空文件
提示:大多數情況下,我們使用“vim 文件名”的方式創建新文件,這樣便於編輯,而touch只是創建了一個空文件。
(3)ln命令:
|
軟連接(-s) |
硬鏈接 |
刪除原始文件後 |
失效 |
仍舊可用 |
使用範圍 |
適用於文件或目錄 |
只可用於文件 |
保存位置 |
與原始文件可以位於不同的文件系統中 |
必須與原始文件在同一個文件系統(如一個Linux分區)內 |
4.3複製、刪除、移動
(1)cp命令:複製(Copy)文件或目錄
-f |
覆蓋目標同名文件或目錄時不進行提醒,直接強制複製 |
-i |
覆蓋目標同名文件或目錄時提醒用戶確認 |
-p |
複製時保持源文件的權限、屬主及時間標記等屬性不變 |
-r |
複製目錄時必須使用此選項,表示遞歸複製所有文件及子目錄 |
注意:複製多個文件或目錄時,目標位置必須是目錄,且目標目錄必須已存在
(2)rm命令:刪除(Remove)文件或目錄
-f:刪除時不提示
-i:刪除時提示
-r:刪除目錄時必須使用,表示遞歸刪除整個目錄
(3)mv命令:移動(Move)文件或目錄
提示:
- 需要移動多個文件或目錄時,目標位置必須目錄,而且目標目錄必須已存在。
- 如果目標位置與源位置相同,則相當於執行重命名操作
4.4查找目錄和文件
(1)which命令:查找用戶所執行的命令文件存放的目錄
搜索範圍由環境變量 PATH 決定(echo $PATH)
echo $PATH:顯示當前PATH環境變量,該變量的值由一系列以冒號分隔的目錄名組成
(2)find命令:查找文件或目錄
採用遞歸方式,根據目標的名稱、類型、大小等不同屬性進行精細查找
常用查找條件類型
查找類型 |
關鍵字 |
說明 |
按名稱查找 |
-name |
根據目標文件的名稱進行查找,允許使用“*”及“?”通配符,*代替0個或多個字符,?代替一個字符 |
按文件大小查找 |
-size |
根據目標文件的大小進行查找 |
按文件屬主查找 |
-user |
根據文件是否屬於目標用戶進行查找 |
按文件類型查找 |
-type |
根據文件的類型進行查找 |
使用 find 命令實現多個查找條件
各表達式之間使用邏輯運算符
- “-a”表示 而且(and)
- “-o”表示 或者(or)
說明:上面例子中,第一個使用了參數-a,要求-a兩邊的查找條件必須同時滿足,簡單解釋一下這條命令的意思:查找/boot目錄下文件大小超過1024k,並且文件名是以“vmlinuz”開頭的文件;第二使用了參數-o,要求-o兩邊的查找條件滿足其中任意一個即可,這條命令的意思是:查找/boot目錄下文件大小超過1024k,或者是以“vmlinuz”開頭的文件。