實用指令
一、執行級別
1、執行級別說明
0:關機 1:單使用者【找回丟失密碼】 2:多使用者狀態沒有網路服務 3:多使用者狀態有網路服務 4:系統未使用保留給使用者 5:圖形介面 6:系統重啟
常用執行級別是 3 和 5 ,要修改預設的執行級別可改檔案/etc/inittab 的 id:5:initdefault:這一行中的數字
執行級別的示意圖:
2、切換到指定執行級別的指令
#基本語法 init [012356]
應用例項
案例 1: 通過 init 來切換不同的執行級別,比如動 5->3 , 然後關機
init 3 init 5 init 0
案例 2:如何找回 root 密碼,如果我們不小心,忘記 root 密碼,怎麼找回。
思路: 進入到單使用者模式,然後修改 root 密碼。因為進入單使用者模式,root 不需要密碼就可以登入。
二、幫助指令
當我們對某個指令不熟悉時,我們可以使用 Linux 提供的幫助指令來了解這個指令的使用方法。
1、man 獲得幫助資訊
#基本語法
man [命令或配置檔案](功能描述:獲得幫助資訊)
應用例項:檢視 ls 命令的幫助資訊
2、help 指令
#基本語法
help 命令 (功能描述:獲得 shell 內建命令的幫助資訊)
應用例項:檢視 cd 命令的幫助資訊
三、檔案目錄類
1、pwd 指令
#基本語法 pwd (功能描述:顯示當前工作目錄的絕對路徑)
應用例項:顯示當前工作目錄的絕對路徑
2、ls 指令
#基本語法 ls [選項] [目錄或是檔案] #常用選項 -a:顯示當前目錄所有的檔案和目錄,包括隱藏的。 -l:以列表的方式顯示資訊
應用例項:檢視當前目錄的所有內容資訊
3、cd 指令
#基本語法 cd [引數] (功能描述:切換到指定目錄) #常用引數 絕對路徑和相對路徑 cd ~ 或者 cd :回到自己的家目錄 cd .. 回到當前目錄的上一級目錄
4、mkdir 指令
mkdir 指令用於建立目錄(make directory)
#基本語法
mkdir [選項] 要建立的目錄
#常用選項
-p :建立多級目錄
應用例項
案例 1:建立一個目錄 /home/dog
案例 2:建立多級目錄 /home/animal/tiger
5、rmdir 指令
rmdir 指令刪除空目錄
#基本語法
rmdir [選項] 要刪除的空目錄
應用例項:刪除一個目錄 /home/dog
使用細節
rmdir 刪除的是空目錄,如果目錄下有內容時無法刪除的。
提示:如果需要刪除非空目錄,需要使用 rm -rf 要刪除的目錄
6、touch 指令
touch 指令建立空檔案
#基本語法
touch 檔名稱
應用例項:建立一個空檔案 hello.txt
7、cp 指令[重要]
cp 指令拷貝檔案到指定目錄
#基本語法
cp [選項] source dest
#常用選項
-r :遞迴複製整個資料夾
應用例項
案例 1: 將 /home/aaa.txt 拷貝到 /home/bbb 目錄下[拷貝單個檔案]
案例 2: 遞迴複製整個資料夾,舉例將/home/test 整個目錄拷貝到 /home/zwj 目錄
8、rm 指令
rm 指令移除【刪除】檔案或目錄
#基本語法 rm [選項] 要刪除的檔案或目錄 #常用選項 -r:遞迴刪除整個資料夾 -f:強制刪除不提示
應用例項
案例 1: 將 /home/aaa.txt 刪除
案例 2: 遞迴刪除整個資料夾 /home/bbb
使用細節
強制刪除不提示的方法:帶上 -f 引數即可
9、mv 指令
mv 移動檔案與目錄或重新命名
#基本語法
mv oldNameFile newNameFile (功能描述:重新命名)
mv /temp/movefile /targetFolder (功能描述:移動檔案)
應用例項
案例 1:將 /home/aaa.txt 檔案重新命名為 pig.txt
案例 2:將 /home/pig.txt 檔案移動到 /root 目錄下
10、cat 指令
cat 檢視檔案內容,是以只讀的方式開啟。
#基本語法
cat [選項] 要檢視的檔案
#常用選項
-n :顯示行號
應用例項:/etc/profile 檔案內容,並顯示行號
使用細節
- cat 只能瀏覽檔案,而不能修改檔案,為了瀏覽方便,一般會帶上管道命令 | more
- cat 檔名 | more [分頁瀏覽]
11、more 指令
more 指令是一個基於 VI 編輯器的文字過濾器,它以全螢幕的方式按頁顯示文字檔案的內容。more 指令中內建了若干快捷鍵,詳見操作說明
#基本語法
more 要檢視的檔案
應用例項:採用 more 檢視檔案 /etc/profile
快捷鍵一覽
12、less 指令
less 指令用來分屏檢視檔案內容,它的功能與 more 指令類似,但是比 more 指令更加強大,支援各種顯示終端。less 指令在顯示檔案內容時,並不是一次將整個檔案載入之後才顯示,而是根據顯示需要載入內容,對於顯示大型檔案具有較高的效率。
#基本語法
less 要檢視的檔案
應用例項:採用 less 檢視一個大檔案檔案 /opt/金庸-射鵰英雄傳 txt 精校版.txt
快捷鍵一覽
13、> 指令 和 >> 指令
- > 輸出重定向:會將原來的檔案的內容覆蓋
- >> 追加:不會覆蓋原來檔案的內容,而是追加到檔案的尾部。
基本語法
1) ls -l >檔案功能描述:列表的內容寫入檔案 a.txt 中(覆蓋寫)
說明:ls -l > a.txt , 將 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 檔案中
14、echo 指令
echo 輸出內容到控制檯。
#基本語法
echo [選項] [輸出內容]
應用例項:使用 echo 指令輸出環境變數,輸出當前的環境路徑
15、head 指令
head 用於顯示檔案的開頭部分內容,預設情況下 head 指令顯示檔案的前 10 行內容
#基本語法 head 檔案 (功能描述:檢視檔案頭 10 行內容) head -n 5 檔案 (功能描述:檢視檔案頭 5 行內容,5 可以是任意行數)
應用例項:檢視 /etc/profile 的前面 5 行程式碼
16、tail 指令
tail 用於輸出檔案中尾部的內容,預設情況下 tail 指令顯示檔案的後 10 行內容。
#基本語法 1) tail 檔案(功能描述:檢視檔案後 10 行內容) 2) tail -n 5 檔案(功能描述:檢視檔案後 5 行內容,5 可以是任意行數) 3) tail -f 檔案(功能描述:實時追蹤該文件的所有更新,工作經常使用)
應用案例
案例 1:檢視 /etc/profile 最後 5 行的程式碼
案例 2:實時監控 mydate.txt , 看看到檔案有變化時,是否看到, 實時的追加日期
17、ln 指令
軟連結也叫符號連結,類似於 windows 裡的快捷方式,主要存放了連結其他檔案的路徑
#基本語法
ln -s [原檔案或目錄] [軟連結名] (功能描述:給原檔案建立一個軟連結)
應用例項
案例 1: 在/home 目錄下建立一個軟連線 linkToRoot,連線到 /root 目錄
案例 2: 刪除軟連線 linkToRoot
細節說明:當我們使用 pwd 指令檢視目錄時,仍然看到的是軟連結所在目錄。
18、history 指令
檢視已經執行過歷史命令,也可以執行歷史指令
#基本語法
history (功能描述:檢視已經執行過歷史命令)
應用例項
案例 1: 顯示所有的歷史命令
案例 2: 顯示最近使用過的 10 個指令
案例 3: 執行編號為XXX的指令
四、時間日期類
1、date 指令-顯示當前日期
#基本語法 1) date (功能描述:顯示當前時間) 2) date +%Y(功能描述:顯示當前年份) 3) date +%m(功能描述:顯示當前月份) 4) date +%d(功能描述:顯示當前是哪一天) 5) date "+%Y-%m-%d %H:%M:%S"(功能描述:顯示年月日時分秒)
應用例項
案例 1: 顯示當前時間資訊
案例 2: 顯示當前時間年月日
案例 3: 顯示當前時間年月日時分秒
2、date 指令-設定日期
#基本語法
date -s 字串時間
應用例項:設定系統當前時間 , 比如設定成 2018-10-10 11:22:22
3、cal 指令
檢視日曆指令
#基本語法
cal [選項] (功能描述:不加選項,顯示本月日曆)
應用例項
案例 1: 顯示當前日曆
案例 2: 顯示 2020 年日曆
五、搜尋查詢類
1、find 指令
find 指令將從指定目錄向下遞迴地遍歷其各個子目錄,將滿足條件的檔案或者目錄顯示在終端。
#基本語法
find [搜尋範圍] [選項]
選項說明
應用例項
案例 1:按檔名:根據名稱查詢 /home 目錄下的 hello.txt 檔案
案例 2:按擁有者:查詢 /opt 目錄下,使用者名稱稱為 nobody 的檔案
案例 3:查詢整個 linux 系統下大於 20m 的檔案(+n 大於 -n 小於 n 等於)
1m = 1024k
查詢 / 目錄下,所有 .txt 的檔案
2、locate 指令
locaate 指令可以快速定位檔案路徑。locate 指令利用事先建立的系統中所有檔名稱及路徑的locate 資料庫實現快速定位給定的檔案。Locate 指令無需遍歷整個檔案系統,查詢速度較快。為了保證查詢結果的準確度,管理員必須定期更新 locate 時刻。
#基本語法
locate 搜尋檔案
特別說明
由於 locate 指令基於資料庫進行查詢,所以第一次執行前,必須使用 updatedb 指令建立 locate 資料庫。
應用例項:使用 locate 指令快速定位 hello.txt 檔案所在目錄
3、grep 指令和管道符號 |
grep 過濾查詢 , 管道符,“|”,表示將前一個命令的處理結果輸出傳遞給後面的命令處理。
#基本語法 grep [選項] 查詢內容 原始檔 #常用選項 -n:顯示匹配行及行號 -i:忽略字母大小寫
應用例項:請在 hello.txt 檔案中,查詢“yes”所在行,並且顯示行號
六、壓縮和解壓類
1、gzip/gunzip 指令
gzip 用於壓縮檔案, gunzip 用於解壓的
#基本語法 gzip 檔案(功能描述:壓縮檔案,只能將檔案壓縮為*.gz 檔案) gunzip 檔案.gz(功能描述:解壓縮檔案命令)
應用例項
案例 1:gzip 壓縮, 將 /home 下的 hello.txt 檔案進行壓縮
案例 2:gunzip 壓縮,將 /home 下的 hello.txt.gz 檔案進行解壓縮
細節說明:當我們使用 gzip 對檔案進行壓縮後,不會保留原來的檔案。
2、zip/unzip 指令
zip 用於壓縮檔案, unzip 用於解壓的,這個在專案打包釋出中很有用的
#基本語法 zip [選項] XXX.zip 將要壓縮的內容(功能描述:壓縮檔案和目錄的命令) unzip [選項] XXX.zip (功能描述:解壓縮檔案) #zip 常用選項 -r:遞迴壓縮,即壓縮目錄 #unzip 的常用選項 -d<目錄> :指定解壓後文件的存放目錄
應用例項
案例 1: 將 /home 下的 所有檔案進行壓縮成 mypackage.zip
案例 2: 將 mypackge.zip 解壓到 /opt/tmp 目錄下
3、tar 指令
tar 指令是打包指令,最後打包後的檔案是 .tar.gz 的檔案。
#基本語法 tar [選項] XXX.tar.gz 打包的內容 (功能描述:打包目錄,壓縮後的檔案格式.tar.gz) #選項說明 -c:產生.tar打包檔案 -v:顯示詳細資訊 -f:指定壓縮後的檔名 -z:打包同時壓縮 -x:解包.tar檔案
應用例項
案例 1: 壓縮多個檔案,將 /home/a1.txt 和 /home/a2.txt 壓縮成 a.tar.gz
案例 2: 將/home 的資料夾 壓縮成 myhome.tar.gz
案例 3: 將 a.tar.gz 解壓到當前目錄
案例 4: 將 myhome.tar.gz 解壓到 /opt/ 目錄下
說明:指定解壓到的那個目錄,事先要存在才能成功,否則會報錯。