目錄
前言
一、命令概述
1、命令分類
(1)內部命令
(2)外部命令
2、命令格式
(1)命令字
(2)選項
(3)引數
3、命令幫助
二、基本命令操作
1、查看及切換目錄
(1)pwd
(2)cd
(3)ls
(4)du
2、創建目錄和檔案
(1)mkdir
(2)touch
(3)ln
3、復制、洗掉、移動
(1)cp
(2)rm
(3)mv
4、查找目錄和檔案
(1)which
(2)find
結語
前言
在Linux作業系統中,凡是在字符操作界面中輸入的能夠完成特定操作和任務的字串都可以稱為命令,嚴格來說,命令通常只代表了實作某一類功能的指令或程式的名稱
一、命令概述
1、命令分類
Linux命令的執行必須依賴于Shell命令解釋器.,Shell實際上是在Linux作業系統中運行的一種特殊程式,它位于作業系統內核與用戶之間,負責接收用戶輸入的命令并進行解釋,將需要執行的操作傳遞給系統內核執行,Shell在用戶和內核之間充當了翻譯官的角色,當用戶登錄到Linux系統時,會自動加載一個Shell程式,以便給用戶提供可以輸入命令的作業系統,Bash是Linux作業系統中默認使用的Shell程式,檔案位于/bin/bash,根據Linux命令與Shell程式的關系, Linux命令一般分為兩種型別
(1)內部命令
內部命令是指集成于Shell解釋器程式(如Bash)內部的一些特殊指令,也稱為內建(Built-in)指令,內部命令屬于Shell的一部分,所以沒有單獨對應的系統檔案,只要Shell解釋器被運行,內部指令也就自動載入記憶體了,用戶可以直接使用,內部命令無須從硬碟中重新讀取檔案,因此執行效率較高
(2)外部命令
外部命令是指Linux作業系統中能夠完成特定功能的腳本檔案或二進制程式,每個外部命令對應系統中的一個檔案,是屬于Shell解釋器程式之外的命令,所以稱為外部命令.,Linux作業系統必須知道外部命令對應的檔案位置,才能夠由Shell加載并執行,Linux作業系統默認會將存放外部命令、程式的目錄(如/bin、/usr/bin、/usr/local/bin等)添加到用戶的搜索路徑中,當使用位于這些目錄中的外部命令時,用戶不需要指定具體的位置,因此在大多數情況下,不用刻意去分辨內部命令和外部命令,其使用方法是基本類似的
2、命令格式
在使用內部命令或外部命令時,參照一個通用的命令列使用格式,可方便理解Linux命令的作用和作業方式,通用的命令列使用格式如下
命令字 [選項] [引數]
其中,命令字、選項、引數之間用空格分開,多余的空格將被忽略,[]括起來的部分表示可以省略,即命令列可以只有命令字,也可以只有命令字、選項,或者只有命令字、引數
(1)命令字
命令字即命令名稱,是整條命令中最關鍵的一部分,在Linux的字符操作界面中,使用命令字唯一確定一條命令,因此在輸入命令時一定要確保輸入的命令字正確,并且,在Linux的命令環境中無論是命令名還是檔案名,對英文字符的處理是區分大小寫的,操作時需要細心
(2)選項
選項的作用是調節命令的具體功能,決定這條命令如何執行,同一個命令字配合不同的選項使用時,可以獲得相似但具有細微差別的功能,命令使用的選項有如下一些特性
- 不同的命令字能夠使用的選項也會不同(選項的個數和內容)
- 選項的數量可以是多個,也可以省略,同時使用多個選項時,選項之間使用空格分隔,若不使用選項,將執行命令字的默認功能
- 使用單個字符的選項時,一般在選項前使用"-"符號(半角的減號符)引導,稱為短格式選項,多個單字符選項可以組合在一起使用,如“-al”等同于“-a -l”
- 使用多個字符的選項時,一般在選項前使用“--”符號(兩個半角的減號符)引導,稱為長格式選項,如 “--help”
- 有些命令字對于同一功能會同時提供長、短兩種格式的選項,長格式的選項意義明確,容易記憶,而短格式的選項結構簡單、輸入快捷,兩種格式可以混用
(3)引數
命令引數是命令字的處理物件,通常情況下命令引數可以是檔案名、目錄(路徑)名或用戶名等內容
3、命令幫助
help 內部命令 查看某個內部命令的幫助資訊 外部命令 --help 查看某個外部命令的幫助資訊 man 命令 查看某個命令的幫助手冊 命令1 | 命令2 將命令1結果運行命令2 命令1&& 命令2 命令1和命令2同時運行 命令>檔案位置 命令輸出結果保存到指定位置的某個檔案{覆寫} 命令》檔案位置 命令輸出結果保存到指定位置的某個檔案{追加}
例:
history | col -b > history.txt 將歷史記錄保存至history.txt
二、基本命令操作
1、查看及切換目錄
(1)pwd
[root@host ~]# pwd 查看當前作業目錄
/root
(2)cd
cd 檔案夾位置 切換到某個檔案目錄
cd 當前路徑下的檔案夾 進入當前路徑下的某檔案夾
cd / 回到根目錄
cd ~或cd 回到當前用戶的主目錄
cd .. 回到上級目錄
cd - 回到上次命令所處的目錄
(3)ls
ll 顯示當前檔案夾下所有檔案和檔案夾(ll等同于ls -l,做了關聯,用alias可查看) ll -a 顯示當前檔案夾下所有檔案和檔案夾(包含隱藏檔案) ls -a 顯示所有檔案,包含隱藏檔案 ls -A 顯示所有檔案,包含隱藏檔案,但不包含.和.. ls -l 顯示為long format(長格式),列出檔案的型別、權限、所有者、組群、大小、創建日期、檔案是否是到系統其它地方的鏈接,以及鏈接的指向 ls -L 顯示鏈接檔案的具體位置(軟硬鏈接) ls -R 遞回顯示檔案夾下的每個層次的檔案夾及檔案 ls -d 不展開目錄,只顯示目錄自身,一般與-l配合使用{-ld}以顯示目錄自身的屬性資訊(只顯示當前目錄的內容) ls -S 以檔案大小排序顯示,默認從大到小 -r后,從小到大 ls -U 按存放順序排序顯示 ls -X 按擴展名的首字母來排序 ls -t 按資料修改時間 排序(先顯示時間最近的) ls -ul 按訪問時間排序(先顯示時間最近的) ls -h 顯示檔案大小單位需結合-l使用
常用
ls -ld 只顯示當前目錄詳細屬性,不顯示目錄下內容
ls -lh 檔案路徑1 檔案路徑2 同時查看兩個檔案資訊
查看/etc/passwd.txt資訊
ls -lh /etc/passw?.txt ?代表一個未知字符
ls -lh /etc/pa*.txt *代表多個未知字符
(4)du
du命令用于顯示指定檔案(夾)在磁盤中所占的空間資訊
du -a 顯示所有檔案大小包括目錄
du -h 以Kb,Mb,Gb為單位,提高資訊的可讀性
du -s 僅顯示總計大小而不是每個檔案大小
常用
du -sh 檔案夾位置 統計一個檔案內所有檔案共占用總空間大小
du -sh * 統計當前目錄下每個目錄檔案夾占用空間大小
du -ah 檔案夾位置 統計檔案夾下所有每個檔案大小及檔案夾總大小
2、創建目錄和檔案
(1)mkdir
創建目錄
mkdir 檔案夾名稱 創建檔案夾
mkdir -p 檔案夾1/檔案夾2/檔案夾3 創建嵌套的多個檔案夾
mkdir {1.2.3.4.5} 創建多個目錄
(2)touch
創建檔案
touch 創建檔案
touch {1.2.3.4.5}.txt 創建多個檔案
(3)ln
創建鏈接
ln 源檔案或目錄 鏈接檔案或鏈接目錄 創建硬鏈接{源檔案洗掉后鏈接仍有效}
ln -s 源檔案或目錄 鏈接檔案或鏈接目 創建軟連接{源檔案洗掉后鏈接失效}
3、復制、洗掉、移動
(1)cp
復制
cp -a 此選項通常在復制目錄時使用,它保留鏈接、檔案屬性,并復制目錄下的所有內容 cp -f 覆寫已經存在的目標檔案而不給出提示 cp -i 與 -f 選項相反,在覆寫目標檔案之前給出提示,要求用戶確認是否覆寫 cp -p 復制時屬性,修改時間,權限,所屬用戶等不會改變 cp -r 復制目錄時必須要輸入此選項,復制該目錄下所有的子目錄和檔案 cp -l 不復制檔案,只是生成鏈接檔案{硬鏈接}
(2)rm
洗掉
rm -i 洗掉前逐一詢問確認
rm -f 即使原檔案屬性設為只讀,亦強制洗掉,無需逐一確認
rm -r 將目錄及其目錄下的檔案逐一洗掉
(3)mv
移動
mv -f 如果目標檔案已經存在,不會詢問而直接覆寫
mv -i 若目標檔案已經存在時,就會詢問是否覆寫
常用
mv 檔案名1或檔案夾名1 檔案夾位置 將檔案1或檔案夾1移動到某個檔案夾
mv 檔案名1或檔案夾名1 檔案2或檔案夾2 將檔案1或檔案夾1重命名為檔案2或檔案夾2
4、查找目錄和檔案
(1)which
which用于查找命令檔案所在位置,其搜索范圍可用“echo $PATH”命令查看
which 命令名 查找命令,找到第一個后不再查找
which -a 命令名 查找所有符合名字的命令
(2)find
檔案型別
d: 目錄
c: 字型設備檔案
b: 區塊設備檔案
f: 一般檔案
find 目錄位置 -name "檔案名" 查找某個檔案夾下某個檔案
例:
find . -name "*.c" 查找出當前目錄及其子目錄下所有檔案后綴為 .c 的檔案
find 目錄位置 -type 檔案型別 查找某個檔案夾下某個型別的檔案
find . -type f 查找出當前目錄及子目錄中所有一般檔案
-a:且{兩者都要滿足},-o:或者{兩者滿足其一}
find 目錄位置 -size +或-檔案大小{kB,MB,GB} -a -name "檔案名字1" 查找某個目錄下名為1且大于或小于某個數值的檔案 find 目錄位置 -size +或-檔案大小{kB,MB,GB} -o -name "檔案名字1" 查找某個目錄下名為1或大于或小于某個數值的檔案
常用
find /var/log -type f -mtime +7 -ok rm {} \; 查找 /var/log 目錄中更改時間在 7 日以前的普通檔案,并在洗掉之前詢問它們 find / -type f -size +1024 -exec ls -l {} \; 查找系統中所有檔案長度大于1024kb的普通檔案,并列出它們的完整路徑 find /home -name “*.log” -mtime +3 exec rm -rf {} \; 查找home目錄最近3天的日志檔案并洗掉
結語
在實際使用Linux命令列的程序中,選項和引數的稱謂經常混淆,甚至前后順序也允許顛倒,但一般不會影響命令的執行效果,所以很多時候并不做嚴格區分
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/398560.html
標籤:其他
