常見的Linux執(zhí)行命令的格式是這樣的:
命令名稱 [命令參數(shù)] [命令對象]
三者之間用空格分隔。
- 命令參數(shù)可用長格式(完整的選項名稱)如
--help,也可以是短格式(單個字母的縮寫)如-h - 命令對象一般是要處理的文件、目錄、用戶等資源。
本節(jié)摘要
- 常用系統(tǒng)工作命令echo、date、reboot、poweroff、wget、ps、top、pidof、kill、killall
- 系統(tǒng)狀態(tài)檢測命令 ifconfig、uname、uptime、free、last、history、sosreport
- 工作目錄切換命令 pwd、cd、ls
- 文本文件編輯命令 cat、more、head、tail、 tr、wc、stat、cut、diff
- 文件目錄管理命令 touch、mkdir、cp、mv、rm、dd、file
- 打包壓縮與搜索命令 tar、grep、find
常用系統(tǒng)工作命令
1 echo
用于在終端輸出字符串或變量的值。
格式為:echo [字符串 | $變量]

2 date
用于顯示及設(shè)置系統(tǒng)的時間或日期。
格式為:date [選項] [+指定的格式]
date命令中的參數(shù)及作用如下:
| 參數(shù) | 作用 |
|---|---|
| %t | 跳格(Tab鍵) |
| %Y | 年 |
| %m | 月 |
| %d | 日 |
| %H | 小時(24小時制) |
| %I | 小時(12小時制) |
| %M | 分鐘 |
| %S | 秒 |
| %j | 今年中的第幾天 |

修改時間的格式為
date -s "修改的時間"
3 reboot
用于重啟系統(tǒng)。
格式為 reboot,默認只能使用root管理員來重啟。
4 poweroff
用于關(guān)閉系統(tǒng)。
格式為poweroff,默認只能使用root管理員來重啟。
5 wget
用于在終端中下載網(wǎng)絡(luò)文件。
格式為 wget [參數(shù)] 下載地址,wget的參數(shù)及作用如下:
| 參數(shù) | 作用 |
|---|---|
| -b | 后臺下載模式 |
| -P | 下載到指定目錄 |
| -p | 下載頁面內(nèi)所有資源,包括圖片、視頻等。 |
| -t | 最大嘗試次數(shù) |
| -c | 斷點續(xù)傳 |
| -r | 遞歸下載 |
6 ps
用于查看系統(tǒng)中的進程狀態(tài)。
格式為ps [參數(shù)],其參數(shù)及作用如下:
| 參數(shù) | 作用 |
|---|---|
| -a | 顯示所有進程(包括其他用戶) |
| -u | 用戶及其他詳細信息 |
| -x | 顯示沒有控制終端的進程 |
Linux系統(tǒng)中有5種常見的進程狀態(tài),分別是R(運行)、S(中斷)、D(不可中斷)、Z(僵死)和T(停止)。

7 top
用于動態(tài)地監(jiān)視進程活動與系統(tǒng)負載等信息。
格式為 top,top命令能夠動態(tài)地查看系統(tǒng)運維狀態(tài),相當(dāng)于強化版的windows任務(wù)管理器。

8 pidof
用于查詢某個指定服務(wù)進程的PID值。
格式為pidof [參數(shù)] [服務(wù)名稱],由于每個進程的PID是唯一的,因此可以通過PID來區(qū)分不同的進程。

9 kill
用于終止某個指定PID的服務(wù)進程。
格式為kill [參數(shù)] [進程PID]
10 killall
用于終止某個指定名稱的服務(wù)所對應(yīng)的全部進程。
格式為killall [參數(shù)] [進程名稱]
系統(tǒng)狀態(tài)檢測命令
1 ifconfig
用于獲取網(wǎng)卡配置與網(wǎng)絡(luò)狀態(tài)等信息。
格式為 ifconfig [網(wǎng)絡(luò)設(shè)備] [參數(shù)]

2 uname
用于查看系統(tǒng)內(nèi)核與系統(tǒng)版本等信息。
格式為uname [-a]

3 uptime
用于查看系統(tǒng)負載信息。
格式為 uptime

4 free
用于顯示當(dāng)前系統(tǒng)中內(nèi)存的使用量信息。
格式為free [-h]

5 who
用于查看當(dāng)前登陸主機的用戶終端信息。
格式為who [參數(shù)]

6 last
用于查看所有系統(tǒng)的登陸記錄。
格式為 last [參數(shù)]

7 history
用于顯示歷史執(zhí)行過的命令。
格式為history [-c],如果使用-c參數(shù)則會清空所有歷史命令記錄。

8 sosreport
用于收集系統(tǒng)配置及架構(gòu)信息并輸出診斷文檔。
格式為sosreport
工作目錄切換命令
1 pwd
用于顯示用戶當(dāng)前所處的工作目錄。
格式為pwd [選項]

2 cd
用于切換工作路徑。
格式為 cd [目錄名稱],除了常見的切換目錄方式,還有下面的快捷切換。
- cd - 返回上一次所處的目錄
- cd.. 進入上級目錄
- cd ~ 進入當(dāng)前用戶的家目錄
- cd ~username進入其他用戶的家目錄
3 ls
用于顯示目錄中的文件信息。
格式為ls [選項] [文件],使用-a參數(shù)看到全部文件(包括隱藏文件),使用-l參數(shù)可以查看文件的屬性等詳細信息。

文本文件編輯命令
1 cat
用于查看內(nèi)容較少的純文本文件。
格式為cat [選項] [文件],如果要顯示行號,可以在cat命令后加一個-n參數(shù)。

2 more
用于查看內(nèi)容較多的純文本文件。
格式為cat [選項] [文件],使用空格鍵或回車鍵向下翻頁。

3 head
用于查看純文本文檔的前N行。
格式為head [選項] [文件],通過-n 行數(shù)顯示前n行。

4 tail
用于查看純文本文檔的后N行。
格式為tail [選項] [文件],通過-n 行數(shù)顯示后n行。tail命令還有個強大的地方是通過-f參數(shù)可以持續(xù)刷新一個文件的內(nèi)容,當(dāng)想要實時查看最新日志文件時,這特別有用,此時的格式是:tail -f 文件名

5 tr
用于替換文本文件中的字符。
格式為tr [原始字符] [目標(biāo)字符]

6 wc
用于統(tǒng)計指定文本的行數(shù)、字數(shù)、字節(jié)數(shù)。
格式為wc [參數(shù)] 文本。參數(shù)及作用如下:
| 參數(shù) | 作用 |
|---|---|
| -l | 只顯示行數(shù) |
| -w | 只顯示單詞數(shù) |
| -c | 只顯示字節(jié)數(shù) |

7 stat
用于查看文件的具體存儲信息和時間等信息。
格式為stat 文件名

8 cut
用于按“列”提取文本字符。
格式為cut [參數(shù)] 文本,其中要用到兩個參數(shù):-d參數(shù)用來設(shè)置間隔符號,-f參數(shù)用來設(shè)置需要看的列數(shù)。如下圖中提取了passwd中第一列的用戶名,-d:設(shè)置了分隔符,-f1設(shè)置了提取第一列。

9 diff
用于比較多個文本文件的差異。
格式為diff [參數(shù)] 文件。該命令有兩個參數(shù):--brief參數(shù)用來確認兩個文件是否不同,-c參數(shù)用來詳細比較出文件的差異之處。

文件目錄管理命令
1 touch
用于創(chuàng)建空白文件或設(shè)置文件的時間。
格式為touch [選項] [文件],創(chuàng)建空白文件很簡單,如touch test,創(chuàng)建一個名為test的空白文本文件。如果是設(shè)置文件的時間,則需要用到以下參數(shù):
| 參數(shù) | 作用 |
|---|---|
| -a | 僅修改“讀取時間“(atime) |
| -m | 僅修改”修改時間“(mtime) |
| -d | 同時修改atime與mtime |

2 mkdir
用于創(chuàng)建空白的目錄。
格式為mkdir [選項] 目錄,如果結(jié)合-p參數(shù),可以遞歸創(chuàng)建嵌套層疊目錄。

3 cp
用于復(fù)制文件或目錄。
格式為cp [選項] 源文件 目標(biāo)文件。其參數(shù)及作用如下:
| 參數(shù) | 作用 |
|---|---|
| -p | 保留原始文件的屬性 |
| -d | 若對象為”鏈接文件“,則保留該”鏈接文件“的屬性 |
| -r | 遞歸持續(xù)復(fù)制(用于目錄) |
| -i | 若目標(biāo)文件存在則詢問是否覆蓋 |
| -a | 相當(dāng)于-pdr(上述三個參數(shù)) |

4 mv
用于剪切文件或?qū)⑽募孛?br>
格式為mv [選項] 源文件 [目標(biāo)路徑|目標(biāo)文件名],如果在同一個目錄對一個文件進行剪切操作,其實就是對其重命名。

5 rm
用于刪除文件或目錄。
格式為rm [選項] 文件,可在rm命令后追加-f參數(shù)來強制刪除,如果想要刪除目錄,需要在命令后面加-r參數(shù)。

6 dd
用于按照指定大小和個數(shù)的數(shù)據(jù)塊來復(fù)制文件或轉(zhuǎn)換文件。
格式為dd [參數(shù)]。參數(shù)的作用如下:
| 參數(shù) | 作用 |
|---|---|
| if | 輸入的文件名稱 |
| of | 輸出的文件名稱 |
| bs | 設(shè)置每個”塊“的大小 |
| count | 設(shè)置要復(fù)制的”塊“的個數(shù) |

如果想把光驅(qū)設(shè)備中的光盤制作成iso格式的鏡像文件,可以使用dd命令實現(xiàn)。

7 file
用于查看文件的類型。
格式為file 文件名,在linux中由于文本、目錄、設(shè)備所有一切都統(tǒng)稱為文件,所以我們就不能單憑后綴就知道具體的文件類型。

打包壓縮與搜索命令
1 tar
用于對文件進行打包壓縮或解壓。
格式為tar [選項] [文件],命令的參數(shù)及作用如下:
| 參數(shù) | 作用 |
|---|---|
| -c | 創(chuàng)建壓縮文件 |
| -x | 解開壓縮文件 |
| -t | 查看壓縮包內(nèi)有哪些文件 |
| -z | 用Gzip壓縮或解壓 |
| -j | 用bzip2壓縮或解壓 |
| -v | 顯示壓縮或解壓的過程 |
| -f | 目標(biāo)文件名 |
| -p | 保留原始的權(quán)限與屬性 |
| -P | 使用絕對路徑來壓縮 |
| -C | 指定解壓到的目錄 |
一般通常用tar -czvf 壓縮包名稱.tar.gz 要打包的目錄把指定文件進行打包壓縮,相應(yīng)的解壓命令為tar -xzvf 壓縮包名稱.tar.gz。
如 tar -czvf etc.tar.gz /etc,表示將目錄etc打包為etc.tar.gz

接下來使用 tar -xzvf etc.tar.gz -C test命令將壓縮包解壓到test文件夾中。

2 grep
用于在文本中執(zhí)行關(guān)鍵詞搜索,并顯示匹配的結(jié)果。
格式為grep [選項] [文件],常用的參數(shù)及作用如下:
| 參數(shù) | 作用 |
|---|---|
| -b | 將可執(zhí)行文件(brinary)當(dāng)作文本文件(text)來搜索 |
| -c | 僅顯示找到的行數(shù) |
| -i | 忽略大小寫 |
| -n | 顯示行號 |
| -v | 反向選擇——僅列出沒有”關(guān)鍵詞“的行 |
3 find
用于按照指定條件來查找文件。
格式為find [查找路徑] 尋找條件 操作,其參數(shù)及作用如下:
| 參數(shù) | 作用 |
|---|---|
| -name | 匹配名稱 |
| -perm | 匹配權(quán)限(mode為完全匹配,-mode為包含即可) |
| -user | 匹配所有者 |
| -group | 匹配所有組 |
| -mtime -n +n | 匹配修改內(nèi)容的時間(-n指n天以內(nèi),+n指n天以前) |
| -atime -n +n | 匹配訪問文件的時間(-n指n天以內(nèi),+n指n天以前) |
| -ctime -n +n | 匹配修改文件權(quán)限的時間(-n指n天以內(nèi),+n指n天以前) |
| -nouser | 匹配無所有者的文件 |
| -nogroup | 匹配無所有組的文件 |
| -newer f1 !f2 | 匹配比文件f1新但比f2舊的文件 |
| --type b/d/c/p/l/f | 匹配文件類型(后面的字母參數(shù)依次表示塊設(shè)備、目錄、字符設(shè)備、管道、鏈接文件、文本文件) |
| -size | 匹配文件的大小(+50KB為查找超過50KB的文件,-50KB相反) |
| -prune | 忽略某個目錄 |
| -exec ······ {}\; | 后面可跟用于進一步處理搜索結(jié)果的命令 |
如,查找文件名host開頭的文件

如在整個系統(tǒng)中搜索權(quán)限中包括SUID權(quán)限的所有文件。

如在整個文件系統(tǒng)中找出所有歸屬與linuxprobe用戶的文件并復(fù)制到/root/findresults目錄,使用命令如下:
find / -user linuxprobe -exec cp -a {} /root/findresults/ \;
