進階指令
1、du指令: 查看目錄所佔磁盤大小 [directory used]
語法:# du 選項 目錄路徑
選項:
(1)-s : sumary 彙總統計
(2)-h :[high] 表示使用較高的可讀性進行顯示
演示:
(1)彙總統計 /etc 的磁盤佔用情況 # du -s /etc
(2)較高的可讀性進行顯示 # du -sh /etc
注意:# ls -l / 可以看見 /etc的空間使用情況:
2月,之前的那個數字就是佔用情況,但是這裏只有8M, 和剛纔的數字不一樣,這是因爲ls -l 當中的那個數字表示的是文件夾佔用空間大小,不包含文件夾當中的文件。
2、df指令:查看磁盤空間剩餘情況 【disk free】
語法:# df -h 【-h 表示以較高的可讀性進行顯示】
演示:# df -h
3、free指令:顯示空間剩餘
語法: # free 選項
選項:
(1)-m
(2)-g
案例:
圖中各項含義解釋:
Mem 一行顯示的是內存的使用情況
Swap 顯示的是交換空間, 當內存不夠的時候,會啓用這2G的預留空間,應急使用
total :所有空間
used :佔用空間
free : 可用空間
shared : 交換空間
buff/cache : 緩衝和緩存空間使用
available 可用的空間
4、find指令:查找文件所在位置
語法:# find 範圍路徑 選項 選項的值
可用選項:
(1)-name : 根據名字進行查詢,支持通配符
(2)-type : 根據文檔類型進行查詢
【d [directory] 文件夾、 f [file] 普通文件、s [socket] 套接字文件、l [link] 連接設備、c 字符設備文件、b [block] 塊狀設備文件】
(3)-user : 根據所有者進行查詢
(4)-group : 根據所屬用戶組進行查詢
(5)-size : 根據文件大小進行查詢
演示:
5、ps指令:顯示進程 【progress show】
語法:# ps -ef 【-e 表示entire,全部進程,-f 表示full,顯示全部的列】
案例:
案例當中各列的解釋:
UID : user id – 進程的啓動用戶名
PID : process id – 進程號
PPID : parent process id – 父進程號
C : 進程在cpu的使用情況
STIME : start time – 進程啓動的時間
TTY : 終端設備的編號, ? 表示設備不是由終端發起的
TIME : 進程運行的時間
CMD : command,顯示進程的名稱或者是位置
6、service指令:服務的停止和重啓
語法:# service 服務名 start/stop/restart
演示:啓動apache # service httpd start
注意:對於服務名是存在要求的,所啓動的服務的服務名稱必須存在於 /etc/init.d 這個目錄下。如果不在的話,無法啓動服務。
剛纔查看etc/init.d 目錄下是不存在httpd服務的,所以啓動失敗
除了上述方法,還可以使用以下指令
# /etc/init.d/服務名 start/stop/restart
進行服務的啓動。
7、grep指令:搜索、過濾,對文件進行篩選
語法: # grep 選項 關鍵詞 文件路徑/內容
選項:-v :排除關鍵詞所在行
演示:
(1)查詢帶有 is 的行
(2)查詢不帶 is 的行
擴展使用:多條件篩選
# grep -E "關鍵詞1 | 關鍵詞2 | 關鍵詞3 | 關鍵詞n"
當中的選項 -E 表示 extension 擴展進行多條件查詢
與之相同的命令:
# egrep "關鍵詞1 | 關鍵詞2 | 關鍵詞3 | 關鍵詞n"
演示樣例:
8、wc指令:文件內容統計 【word count】
語法:# wc -lwc 文檔路徑
選項含義:
-l : line 行數
-w : word 詞數
-c :byte 字節數
演示:
注意 : 無論我們選項的次序寫的是 -lwc 還是 -cwl,顯示的數據的次序是行,單詞數,字節數。
9、管道:不算是命令 是一個符號 “|”
作用:可以把很多符號放在同一行上,主要是用在搜索過濾上。
語法:在終端有輸出的指令 | 有輸入的指令[要求有讀取文件的內容的需求]
管道核心概念的理解:前面語句的輸出就是後面指令的輸入
案例:查找2020test1.txt (這是我桌面上的文件,自己寫的)當中有like字段並且有Linux字段的一行。
# grep “like” test/2020test1.txt | grep "Linux"
顯示結果:
回到目錄:
Linux基礎14篇