Linux常用基礎命令(二)
Linux常用基礎命令
一、-ls——列表顯示目錄內容
顯示目錄中內容,包括子目錄和檔案相關屬性資訊
ls 【選項】 【檔案或目錄...】
1)常用選項
-l、-a、-A、-d、-h、-R、--color
➷-l: 以長格式(Long)顯示檔案和目錄的列表,包括許可權、大小、最後更新時間等詳細資訊。11命令與ls -l功能相同。
➷-a: 顯示所有(All)子目錄和檔案的資訊,包括名稱以點號“.”開頭的隱藏目錄和隱藏檔案。
➷-A: 與-a選項的作用基本類似,但有兩個特殊隱藏目錄不會顯示,即表示當前目錄的“.”和表示父目錄的“..”。
➷-d: 顯示目錄(Directory)本身的屬性,而不是顯示目錄中的內容。
➷-h: 以更人性化(Human)的方式顯示目錄或檔案的大小,預設的大小單位為位元組(B),使用-h選項後將顯。示為KB、NB等單位。此選項需要結合-l 選項一起使用。
➷-R: 以遞迴(Recursive)的方式顯示指定目錄及其子目錄中的所有內容。
➷--color: 在字元模式中以顏色區分不同的檔案,預設已開啟。
➷-i: 顯示檔案和目錄的inode號。
2)--color通常情況下:
• 深藍色表示目錄
• 白色表示一般檔案
• 綠色表示可執行的檔案
• 黃色表示裝置檔案
• 紅色表示壓縮檔案
3)ls -l命令檢視某一個目錄會得到一個7個欄位的列表
第1欄位: 檔案屬性字
第一個字元代表檔案的型別:
“-”表示該檔案是一個普通檔案
“d”表示該檔案是一個目錄
“l”表示該檔案是一個軟連結檔案,類似於windows下的快捷方式
第1字元的後面9個字母表示該檔案或目錄的許可權位:
r表示讀(檢視、下載)
w表示寫(新增、更改、刪除、上傳)
x表示執行(執行檔案、切換目錄)
其中前三個表示檔案擁有者(屬主)的許可權,中間三個表示檔案所屬組擁有的許可權,最後三個表示其他使用者擁有的許可權
第2欄位:檔案硬連結數
如果一個檔案不是目錄,此時這一欄位表示這個檔案所具有的硬連結數
如果是一個目錄,則第2欄位表示該目錄所含子目錄的個數
如果新建一個空目錄,這個目錄的第二欄位就是2,表示該目錄下有兩個子目錄
第3欄位:檔案\目錄擁有者
第4欄位:檔案\目錄擁有者所在的組
第5欄位:檔案所佔用的空間(預設以位元組為單位)
如果是一個目錄,則表示該目錄的大小,而不是目錄以及它下面的檔案的總大小
Linux系統中一切皆檔案,因此目錄也是一種檔案
第6欄位:檔案\目錄最近訪問或修改時間
第7欄位:檔名
如果是一個符號連結(軟連結檔案),那麼會有一個“->”箭頭符號,後面根一個它指向的檔名
結合萬用字元
“?”:代表任意一個字元,有且一個字元。
例:1與1之間。
“*”:代表任意數個字元,可以是0個或者1個或者多個。
例:1與1之間、1之後的、所有的。
“【】”:表示可以匹配字元中的任意一個字元。【abc】、【a-f】
例:1與1之間a-z之間的任意一個“【】”僅代表一個。
二、-alias——設定別名
通過別名機制簡化的常用的、比較長的命令
alias 命令別名=“命令”
“=”兩邊不能有空格
例:設定myls為ls -alh的別名
alias myls=“ls -alh”
別名為myls
取消別名
unalias+命令別名
三、-du——統計目錄及檔案空間佔用情況
統計指定目錄(或檔案)所佔用磁碟空間的大小
du 【選項】 【檔案或目錄...】
1)常用選項
選項 | 說明 |
-a | 統計磁碟空間佔用時包括所有的檔案,而不僅僅只統計目錄 |
-h | 以更人性化的方式(預設以KB計數,但不顯示單位)顯示出統計結果 |
-s | 只統計所佔用空間總的大小,而不是統計每個子目錄、檔案的大小 |
--msx-depth=n | 統計所有小於等於第n層的目錄的總大小 |
注:選項-a和-s不能同時使用
-a統計磁碟空間佔用時包括所有的檔案,而-s只統計所佔用空間總的大小,同時使用會衝突。
統計出/var/log目錄中子目錄的大小
du -h - -max-depth=1/var/log/
四、-mkdir——建立新目錄
建立新的空目錄
mkdir【選項】目錄位置及名稱...
選項-p:一次性建立巢狀的多層目錄
例:建立目錄/aa,在/aa目錄下建立子目錄bb,在/aa/bb目錄下建立子目錄cc
mkdir -p /aa/bb/cc
ls -R 遞迴形式檢視
建立名稱
例:可直接建立
mkdir zxc
例:也可進入目錄時建立
mkdir /opt/zxc
五、-touch——建立空檔案
更新檔案的時間標記
經常用於建立多個新的空檔案
touch 檔案...
建立空檔案
例:
touch 111.txt 222.txt 333.txt
或 touch {111,222,333}.txt
{}為擴充套件作用
例:
touch {1..5}.txt 或 touch 1.txt 2.txt 3.txt 4.txt 5.txt
例:
touch {,aa,bb,cc}.txt 或 touch aa.txt bb.txt cc.txt (.txt)為隱藏的
六、-ln——建立連結檔案
為檔案或目錄建立連結檔案,類似於Windows系統快捷方式。
連結檔案型別
軟連線(又稱為符號連結)
建立軟連結
ln -s 原檔案或目錄...連結檔案或目標位置
例:
硬連結
ln + 原始檔或目錄... 連結檔案或目標位置
例:
軟連結與硬連結的區別
檔案型別 | 軟連結檔案 | 硬連結檔案 |
刪除原始檔後 | 失效 | 仍然可用(檔案佔用空間與原始檔相同) |
使用範圍 | 適用於檔案或目錄 | 僅適用於檔案 |
儲存位置 | 與原始檔可在不同的檔案系統中 | 必須與原始檔在同一個檔案系統(即同一個分割槽)中 |
與原始檔的關係 | 相當於快捷方式 | 相當於給檔案起個別名 |
inode號碼 | inode號碼不同 | inode號碼相同 |
七、-cp——複製檔案或目錄
將徐亞複製的檔案或目錄(源)重建一份,並儲存為新的檔案或目錄
cp【選項】...原始檔或目錄...目標檔案或目錄...
1)常用的選項:
-f: 覆蓋目標同名檔案或目錄時不進行提醒,而直接強制複製
-i: 覆蓋目標同名檔案或目錄時提醒使用者確認
-p: 複製時保持原始檔的許可權、屬主及時間標記等屬性不變
-r: 複製目錄時必須使用此選項,表示遞迴複製所有檔案及子目錄
注:複製多個檔案或目錄時,目標位置必須是目錄,且目標目錄必須已存在。
cp /etc/host.conf /etc/host.conf.bak cp host.conf{ ,.bak} mkdir yum bak cp -r /etc/yum. repos.d/ /etc/yum.conf yum_bak/
八、-rm——刪除檔案或目錄
刪除指定的檔案或目錄
rm【選項】要刪除的檔案或目錄...
1)rm常用的選項
-f :刪除檔案或目錄時不進行提醒,而直接強制刪除
-i :刪除檔案或目錄時提醒使用者確認。(y表示刪除,n表示不刪除)
-r :刪除目錄時必須使用此選項,表示遞迴刪除整個目錄樹(應謹慎使用)
注:不要直接刪除系統中已有的目錄或配置檔案,以避免出現意外故障。
rm -rf /etc/yum. repos.d/* 刪除目錄下檔案時建議最好先切換到目錄下再執行rm -rf命令 cd /etc/yum.repos.d/ rm -rf ./*
刪除命令一定要謹慎操作。
九、-mv——移動檔案或目錄
將指定的檔案或目錄轉移位置。
如果目標位置與源位置相同,則相當於執行重新命名操作。
mv【選項】...原始檔或目錄...目標檔案或目錄
可重新命名
例:mv zxc變123
mv zxc/123
mv命令只能對單個檔案重新命名,但是可使用rename命令批量修改檔名
rename +舊字元+ 新字元 +目標檔案
例:
11.txt 12.txt rename txt jpg *.txt 11.jpg 12.jpg
十、-which——查詢命令檔案存放目錄
搜尋範圍由環境變數PATH決定(echo$PATH)
which命令丨程式名 //預設當找到第一個目標後不再繼續查詢 或 which -a命令丨程式名 //在所有搜尋路徑中查詢
例:
which ls which history
十一、-find——查詢檔案或目錄
採用遞迴的方式,根據目標的名稱、型別、大小等不同屬性進行精細查詢。
find【查詢範圍】【查詢條件表示式】
【查詢範圍】:查詢檔案或子目錄的目錄位置
【查詢條件表示式】:查詢條件型別
1)常用的查詢條件型別
查詢型別 | 關鍵字 | 說明 |
按名稱查詢 | -name | 根據目標檔案的名稱進行查詢,允許使用“*”及“?”萬用字元 |
按檔案大小查詢 | -size |
根據目標檔案的大小進行查詢 一般使用“+”、“-”號設定超過或小於指定的大小作為查詢條件 常用的容量單位包括kB(注意k是小寫)、MB、GB |
按檔案屬主查詢 | -user | 根據檔案是否屬於目標使用者進行查詢 |
按檔案型別查詢 | -type |
根據檔案的型別進行查詢 檔案型別包括普通檔案(f)、目錄(d)、塊裝置檔案(b)、字元裝置檔案(c)等 塊裝置檔案(b):成塊讀取資料的裝置(硬碟,記憶體,光碟機) 字元裝置檔案(c):按單個字元讀取資料的裝置(鍵盤,滑鼠) |
2)各表示式之間使用邏輯運算子
“-a” 表示 而且(and)
“-o” 表示 或者 (or)
3)find之exec用法
-exec引數後面跟的是Linux命令,它是以分號“;”為結束標誌,由於各個系統中分號會有不同的意義,因此在分號前面加上反斜槓轉義符“\”
{}代表前面find查找出來的檔名
find命令匹配到了當前目錄下的所有普通檔案,並在-exec選項中使用Is -l命令將它們列出
find ./ -type f -exec ls -l {} \ ;
十二、總結
檢視及切換目錄(pwd、cd、ls、du)
建立目錄和檔案(mkdir、touch、ln)
複製、刪除、移動目錄和檔案(cp、rm、mv)
查詢目錄和檔案(which、find)