Linux之實用指令
一、指定執行級別
1、基本介紹:
執行級別說明:
0 :關機
1 :單使用者【找回丟失密碼】
2:多使用者狀態沒有網路服務
3:多使用者狀態有網路服務
4:系統未使用保留給使用者
5:圖形介面
6:系統重啟
常用執行級別是3和5 ,要修改預設的執行級別可改檔案
/etc/inittab的id:5:initdefault:這一行中的數字
命令:init [012356]
2、執行級別示意圖
3、面試題:如何找回root密碼
步驟:
啟動時->enter ->進入grub的引導介面 -> 看到一個選單-> e [edit]
->會看到三個選單【選中kernel的選單】-》輸入e[edit]=> 最後新增 1 [single] => 輸入enter (表示儲存) =》 輸入b (reboot) => 進入到單使用者模式,修改密碼或者修改有錯誤的配置檔案.
4、幫助指令
man 獲得幫助資訊
• 基本語法
man [命令或配置檔案](功能描述:獲得幫助資訊)
• 應用例項
案例:檢視ls命令的幫助資訊
help指令
• 基本語法
help 命令 (功能描述:獲得shell內建命令的幫助資訊)
• 應用例項
案例:檢視cd命令的幫助資訊
百度幫助更直接
雖然上面兩個都可以來獲取指令幫助,但是需要英語功底,如果英語不太好的,我還是推薦大家直接百度靠譜。
二、檔案目錄類
pwd 指令
- 基本語法
pwd (功能描述:顯示當前工作目錄的絕對路徑)
應用例項
案例:顯示當前工作目錄的絕對路徑
ls指令
- 基本語法
ls [選項] [目錄或是檔案]
.filename [.檔名隱藏檔案]
../ [上級mul]
常用選項
-a :顯示當前目錄所有的檔案和目錄,包括隱藏的 (檔名以.開頭就是隱藏)。
-l :以列表的方式顯示資訊
-h : 顯示檔案大小時,以 k , m, G單位顯示應用例項
案例:檢視當前目錄的所有內容資訊
使用細節:
說明. 和 .. 的含義和作用
cd 指令
- 基本語法
cd [引數] (功能描述:切換到指定目錄)
常用引數
絕對路徑和相對路徑
cd ~ 或者cd :回到自己的家目錄
cd .. 回到當前目錄的上一級目錄
mkdir指令
mkdir指令用於建立目錄
- 基本語法
mkdir [選項] 要建立的目錄
常用選項
-p :建立多級目錄
應用例項
案例1:建立一個目錄 /home/dog
案例2:建立多級目錄 /home/animal/tiger
cd 指令
- 基本語法
cd [引數] (功能描述:切換到指定目錄)
常用引數
絕對路徑和相對路徑
cd ~ 或者cd :回到自己的家目錄
cd .. 回到當前目錄的上一級目錄
mkdir指令
mkdir指令用於建立目錄
- 基本語法
mkdir [選項] 要建立的目錄
常用選項
-p :建立多級目錄
應用例項
案例1:建立一個目錄 /home/dog
案例2:建立多級目錄 /home/animal/tiger
使用細節
rmdir 刪除的是空目錄,如果目錄下有內容時無法刪除的。
提示:如果需要刪除非空目錄,需要使用 rm -rf 要刪除的目錄
touch指令
touch指令建立空檔案
- 基本語法
touch 檔名稱
應用例項
案例1: 建立一個空檔案 hello.txt
cp指令
cp 指令拷貝檔案到指定目錄
- 基本語法
cp [選項] source dest
常用選項
-r :遞迴複製整個資料夾
•應用例項
案例1: 將 /home/aaa.txt 拷貝到 /home/bbb 目錄下
案例2: 遞迴複製整個資料夾,舉例
•使用細節
強制覆蓋不提示的方法:\cp
rm指令
rm 指令移除檔案或目錄
- 基本語法
rm [選項] 要刪除的檔案或目錄
- 常用選項
-r :遞迴刪除整個資料夾
-f : 強制刪除不提示
應用例項
案例1: 將 /home/aaa.txt 刪除
案例2: 遞迴刪除整個資料夾 /home/bbb
使用細節
強制刪除不提示的方法:帶上 -f 引數即可
mv指令
mv 移動檔案與目錄或重新命名
- 基本語法
mv oldNameFile newNameFile (功能描述:重新命名)
mv /temp/movefile /targetFolder (功能描述:移動檔案)
應用例項
案例1: 將 /home/aaa.txt 檔案 重新命名為 pig.txt
案例2:將 /home/pig.txt 檔案 移動到 /root 目錄下
mv /home/pig.txt /root/
cat指令
cat 檢視檔案內容
- 基本語法
cat [選項] 要檢視的檔案
常用選項
-n :顯示行號
應用例項
案例1: /ect/profile 檔案內容,並顯示行號
使用細節
cat 只能瀏覽檔案,而不能修改檔案,為了瀏覽方便,一般會帶上 管道命令 | more
cat xxx.txt | more (把cat xxx.txt 輸出結果交給 more 處理)
more指令
more指令是一個基於VI編輯器的文字過濾器,它以全螢幕的方式按頁顯示文字檔案的內容。more指令中內建了若干快捷鍵,詳見操作說明
- 基本語法
more 要檢視的檔案
- 操作說明
操作 | 功能說明 |
---|---|
空白鍵 (space) | 代表向下翻一頁; |
Enter | 代表向下翻『一行』; |
q | 代表立刻離開 more ,不再顯示該檔案內容。 |
Ctrl+F | 向下滾動一屏 |
Ctrl+B | 返回上一屏 |
= | 輸出當前行的行號 |
:f | 輸出檔名和當前行的行號 |
less指令
less指令用來分屏檢視檔案內容,它的功能與more指令類似,但是比more指令更加強大,支援各種顯示終端。less指令在顯示檔案內容時,並不是一次將整個檔案載入之後才顯示,而是根據顯示需要載入內容,對於顯示大型檔案具有較高的效率。
- 基本語法
less 要檢視的檔案
- 操作說明
操作 | 功能說明 |
---|---|
空白鍵 | 向下翻動一頁; |
[pagedown] | 向下翻動一頁 |
[pageup] | 向上翻動一頁; |
/字串 | 向下搜尋『字串』的功能;n:向下查詢;N:向上查詢; |
?字串 | 向上搜尋『字串』的功能;n:向上查詢;N:向下查詢; |
q | 離開 less 這個程式; |
echo指令
echo輸出內容到控制檯。
- 基本語法
echo [選項] [輸出內容]
應用例項
案例: 使用echo 指令輸出環境變數
echo $PATH // 可以直接顯示各種環境變數
案例: 使用echo 指令輸出 hello,world!
echo “hello,wrold”
head指令
head用於顯示檔案的開頭部分內容,預設情況下head指令顯示檔案的前10行內容
- 基本語法
head 檔案 (功能描述:檢視檔案頭10行內容)
head -n 5 檔案 (功能描述:檢視檔案頭5行內容,5可以是任意行數)
應用例項
案例: 檢視/etc/profile 的前面5行程式碼
tail指令
tail用於輸出檔案中尾部的內容,預設情況下tail指令顯示檔案的後10行內容。
- 基本語法
1) tail 檔案 (功能描述:檢視檔案頭10行內容)
2) tail -n 5 檔案 (功能描述:檢視檔案頭5行內容,5可以是任意行數)
3) tail -f 檔案 (功能描述:實時追蹤該文件的所有更新)
應用例項
案例1: 檢視/etc/profile 最後5行的程式碼
tail -n 5 /etc/profile
案例2: 實時監控 mydate.txt , 看看到檔案有變化時,是否看到, 實時的追加日期
tail -f mydata.txt
> 指令 和 >> 指令
> 輸出重定向和 >> 追加
- 基本語法
1) ls -l >檔案 (功能描述:列表的內容寫入檔案a.txt中(覆蓋寫))
2) ls -al >>檔案 (功能描述:列表的內容追加到檔案aa.txt的末尾)
3) cat 檔案1 > 檔案2 (功能描述:將檔案1的內容覆蓋到檔案2)
4) echo "內容">> 檔案
應用例項
案例1: 將 /home 目錄下的檔案列表 寫入到 /home/info.txt 中
案例2: 將當前日曆資訊 追加到 /home/mycal 檔案中
ln 指令
軟連結也成為符號連結,類似於windows裡的快捷方式,主要存放了連結其他檔案的路徑
- 基本語法
ln -s [原檔案或目錄] [軟連結名] (功能描述:給原檔案建立一個軟連結)
應用例項
案例1: 在/home 目錄下建立一個軟連線 linkToRoot,連線到 /root 目錄
案例2: 刪除軟連線 linkToRoot細節說明
當我們使用pwd指令檢視目錄時,仍然看到的是軟連結所在目錄。
history指令
檢視已經執行過歷史命令,也可以執行歷史指令
- 基本語法
history (功能描述:檢視已經執行過歷史命令)
應用例項
案例1: 顯示所有的歷史命令
history
案例2: 顯示最近使用過的10個指令。
History 10
案例3:執行歷史編號為5的指令
!5
三、時間日期類
date指令-顯示當前日期
1、基本語法
1) date (功能描述:顯示當前時間)
2) date +%Y (功能描述:顯示當前年份)
3) date +%m (功能描述:顯示當前月份)
4) date +%d (功能描述:顯示當前是哪一天)
5) date "+%Y-%m-%d %H:%M:%S"(功能描述:顯示年月日時分秒)
2、 應用例項
案例1: 顯示當前時間資訊
案例2: 顯示當前時間年月日
案例3: 顯示當前時間年月日時分秒
date指令-設定日期
1、基本語法
date -s 字串時間
2、應用例項
案例1: 設定系統當前時間 , 比如設定成 2020-11-11 11:22:22
cal指令
檢視日曆指令
1、基本語法
cal [選項] (功能描述:不加選項,顯示本月日曆)
2、應用例項
案例1: 顯示當前日曆
案例2: 顯示2020年日曆
四、搜尋查詢類
find指令
find指令將從指定目錄向下遞迴地遍歷其各個子目錄,將滿足條件的檔案或者目錄顯示在終端。
1、 基本語法
find [搜尋範圍] [選項]
2、選項說明
選項 | 功能 |
---|---|
-name<查詢方式> | 按照指定的檔名查詢模式查詢檔案 |
-user<使用者名稱> | 查詢屬於指定使用者名稱所有檔案 |
-size<檔案大小> | 按照指定的檔案大小查詢檔案。 |
3、應用例項
案例1: 按檔名:根據名稱查詢/home 目錄下的hello.txt檔案
案例2:按擁有者:查詢/opt目錄下,使用者名稱稱為 nobody的檔案
案例3:查詢整個linux系統下大於200m的檔案(+n 大於 -n小於 n等於)
shell> find / -size +200M [k, G +n 大於 -n小於 n等於]
locate指令
locaate指令可以快速定位檔案路徑。locate指令利用事先建立的系統中所有檔名稱及路徑的locate資料庫實現快速定位給定的檔案。Locate指令無需遍歷整個檔案系統,查詢速度較快。為了保證查詢結果的準確度,管理員必須定期更新locate時刻。
1、 基本語法
locate 搜尋檔案
2、 特別說明
由於locate指令基於資料庫進行查詢,所以第一次執行前,必須使用updatedb指令建立locate資料庫。
3、應用例項
案例1: 請使用locate 指令快速定位 hello.txt 檔案所在目錄
grep指令和 管道符號 |
grep 過濾查詢 , 管道符,“|”,表示將前一個命令的處理結果輸出傳遞給後面的命令處理。
1、 基本語法
grep [選項] 查詢內容 原始檔
2、常用選項
選項 | 功能 |
---|---|
-n | 顯示匹配行及行號。 |
-i | 忽略字母大小寫 |
3、應用例項
案例1: 請在 hello.txt 檔案中,查詢 “yes” 所在行,並且顯示行號
五、壓縮和解壓類
gzip/gunzip 指令
gzip 用於壓縮檔案, gunzip 用於解壓的
1、 基本語法
gzip 檔案 (功能描述:壓縮檔案,只能將檔案壓縮為*.gz檔案)
gunzip 檔案.gz (功能描述:解壓縮檔案命令)
2、 應用例項
案例1: gzip壓縮, 將 /home下的 hello.txt檔案進行壓縮
shell>gzip hello.txt ===> hello.txt.gz
案例2: gunzip壓縮, 將 /home下的 hello.txt.gz 檔案進行解壓縮
shell>gunzip hello.txt.gz ===> hello.txt
zip/unzip 指令
zip 用於壓縮檔案, unzip 用於解壓的,這個在專案打包釋出中很有用的
1、 基本語法
zip [選項] XXX.zip 將要壓縮的內容(功能描述:壓縮檔案和目錄的命令)
unzip [選項] XXX.zip (功能描述:解壓縮檔案)
2、 zip常用選項
-r:遞迴壓縮,即壓縮目錄
3、 unzip的常用選項
-d<目錄> :指定解壓後文件的存放目錄
4、應用例項
案例1: 將 /home下的 所有檔案進行壓縮成 mypackage.zip
案例2: 將 mypackge.zip 解壓到 /opt/tmp 目錄下
tar 指令
tar 指令 是打包指令,最後打包後的檔案是 .tar.gz 的檔案。
1、基本語法
tar [選項] XXX.tar.gz 打包的內容 (功能描述:打包目錄,壓縮後的檔案格式.tar.gz)
2、 選項說明
選項 | 功能 |
---|---|
-c | 產生.tar打包檔案 |
-v | 顯示詳細資訊 |
-f | 指定壓縮後的檔名 |
-z | 打包同時壓縮 |
-x | 解包.tar檔案 |
3、應用例項
案例1: 壓縮多個檔案,將 /home/a1.txt 和 /home/a2.txt 壓縮成 a.tar.gz
案例2: 將/home 的資料夾 壓縮成 myhome.tar.gz
案例3: 將 a.tar.gz 解壓到當前目錄
案例4: 將myhome.tar.gz 解壓到 /opt/tmp2目錄下