新手必須掌握的Linux命令
一、命令組成
一個完整的命令通常由 命令名稱 [命令參數] [命令對象] 組成。
註意:命令名稱、命令參數、命令對象之間用空格鍵隔開。
二、系統工作命令
查看主機名稱
echo $HOSTNAME
查看系統當前時間,按照 年-月-日 時-分-秒 格式
date "+%Y-%m-%d %H:%M:%S"
root用戶重啟系統
reboot
下載網絡文件
wget [參數] 下載地址
參數 | 作用 |
-b | 後臺下載模式 |
-O | 下載到指定目錄 |
-t | 最大嘗試次數 |
-c | 斷點續傳 |
-p | 下載頁面內所有資源,包括圖片視頻等 |
-r | 遞歸下載 |
三、系統狀態檢測命令
獲取網卡配置與網絡狀態等信息
ifconfig
查看系統內核版本等信息
uname -a
查看系統負載情況
uptime
查看系統內存使用情況 free[-m/-g]
以m為單位顯示
free -m
查看當前登錄主機的用戶情況
who
查看系統所有的登錄記錄
last
查看歷史執行過的命令
history
清空執行過命令的歷史記錄
history -c
四、工作目錄切換命令
查看當前工作目錄
pwd
切換工作路徑
cd [目錄名稱]
參數 | 作用 |
- | 切換到上一次的目錄,如“cd -” |
~ | 切換到“家目錄”,如“cd ~” |
~username | 切換到其他用戶的家目錄,如“cd ~teak” |
.. | 切換到上級目錄,如“cd ..” |
查看目錄中有哪些文件
ls [參數] [文件]
參數 | 作用 |
-a | 查看全部文件(包括隱藏文件) |
-d | 僅查看目錄本身 |
-h | 易讀的文件容量(如:k.m.g) |
-l | 顯示文件的詳細信息 |
五、文本文件編輯命令
查看純文本文件(較短的)
cat [參數] [文件]
參數 | 作用 |
-n | 顯示行號 |
-b | 顯示行號(不包括空行) |
-A | 顯示出“不可見”的符號,如空格,tab鍵等等 |
查看純文本文件(較長的)
more [參數] [作用]
參數 | 作用 |
-數字 | 預先顯示的行數(默認文一頁) |
-d | 顯示提示語句與報錯信息 |
查看純文本文件的前n行
head [參數] [文件]
參數 | 作用 |
-n 10 | 顯示10行 |
-n -10 | 正常輸出(如cat命令),但不顯示最後的10行 |
查看純文本文檔的後N行
tail [參數] [文件]
參數 | 作用 |
-n 10 | 顯示後面的10行 |
-f | 持續刷新顯示的內容 |
查看特殊格式的文件
od [參數] [文件]
參數 | 作用 |
-t a | 默認字符 |
-t c | ASCII字符 |
-t o | 八進制 |
-t d | 十進制 |
-t x | 十六進制 |
-t f | 浮點數 |
轉化文本文件中的字符
tr [原始字符] 目標字符]
統計指定文本的行數、字數、字節數
wc [參數] 文本
參數 | 作用 |
-l | 只顯示行數 |
-w | 只顯示單詞數 |
-c | 只顯示字節數 |
通過列來提取字符
cut [參數] 文本
參數 | 作用 |
-d 分隔符 | 指定分隔符,默認為tab |
-f | 指定顯示的列數 |
-c | 單位改為字符 |
比較多個文本之間的差異
diff [參數] 文件
參數 | 作用 |
-b | 忽略空格引起的差異 |
-B | 忽略空行引起的差異 |
-brief 或 -q | 僅報告是否存在差異 |
-c | 使用上下文輸出格式 |
六、文件目錄管理命令
創建空白文件或修改文件時間
touch [參數] [文件]
Linux 中的文件有三種時間
更改時間(mtime):內容修改時間
更改權限(ctime):更改權限與屬性的時間
讀取時間(atime):讀取文件內容的時間
參數 | 作用 |
-a | 近修改“訪問時間”(atime) |
-m | 近修改“更改時間”(mtime) |
-d | 同時修改atime 與 mtime |
-t | 要修改成的時間 [YYMMDDhhmm] |
創建空白文件夾
mkdir [參數] 目錄
參數 | 作用 |
-m=MODE | 默認的文件目錄權限,如“-m755” |
-p | 連續創建多層目錄(若文件夾存在則忽略) |
-v | 顯示創建過程 |
復制文件或目錄
cp [參數] 源文件 目標文件
參數 | 作用 |
-p | 保留原文件的屬性 |
-d | 若對象為“鏈接文件”,則保留“連接文件”的屬性 |
-r | 遞歸持續復制(用於目錄) |
-i | 若目標存在則詢問是否覆蓋 |
-a | 相當於-pdr(p/d/r為上述的參數) |
移動文件或改名
mv [選項] 文件名 [目標路徑|目標文件名]
刪除文件或目錄
rm [參數] 文件
參數 | 作用 |
-f | 忽略警告信息 |
-i | 刪除前先詢問 |
-r | 刪除文件夾 |
註:Linux系統中還有一個 rmdir命令,他不同於rm -rf 命令會刪除一切,而是僅刪除空目錄,遇到目錄內有文件則報錯
七、用戶和組管理命令
創建新用戶
useradd [參數] 用戶名
參數 | 作用 |
-d | 指定用戶的家目錄(默認為 /home/username) |
-D | 展示默認值 |
-e | 賬號有效截止日期,格式:YYYY-MM-DD |
-g | 指定一個初始用戶組(必須已存在) |
-G | 指定一個或多個擴展用戶組 |
-N | 不創建與用同名的用戶組 |
-s | 指定默認的Shell |
-u | 指定用戶的UID |
修改用戶密碼
passwd [參數] [用戶名]
修改當前用戶:“passwd”
修改其他用戶:“passwd 其他用戶名”
參數 | 作用 |
-l | 鎖定用戶禁止其登錄 |
-u | 解除鎖定,允許用戶登錄 |
-stdin | 允許從標準輸入修改用戶密碼,如(echo "NewPassWord" | passwd -stdin Username) |
-d | 使賬號無密碼 |
-e | 強制用戶下次登錄時修改密碼 |
-S | 顯示用戶的密碼狀態 |
刪除用戶所以表格
userdel [選項] 用戶名
參數 | 作用 |
-f | 強制刪除用戶,家目錄與其相關文件 |
-r | 同時刪除用戶,家目錄與其相關文件 |
修改用戶屬性
usermod [選項] 用戶名
參數 | 作用 |
-c | 填寫賬號的備註信息 |
-d -m | -m與-d連用,可重新指定用戶的家目錄並自動將舊的數據轉移過去 |
-e | 賬戶到期時間,格式“YYYY-MM-DD” |
-g | 變更所屬用戶組 |
-G | 變更擴展用戶組 |
-L | 鎖定用戶禁止其登錄系統 |
-U | 解鎖用戶,允許其登錄系統 |
-s | 變更默認終端 |
-u | 修改用戶的UID |
創建群組
groupadd [選項] 群組名
八、打包壓縮文件命令
對文件打包壓縮或解壓
tar [選項] [文件]
參數 | 作用 |
-c | 創建壓縮文件 |
-x | 解開壓縮文件 |
-t | 查看壓縮包內有那些文件 |
-z | 使用Gzip壓縮或解壓 |
-j | 用bzip2壓縮或解壓 |
-v | 顯示壓縮或解壓的過程 |
-f | 目標文件名 |
-p | 保留原始的權限與屬性 |
-P | 使用絕對路徑來壓縮 |
-C | 指定解壓到的目錄 |
九、文件查詢搜索命令
對文本進行搜索
grep [選項] [文件]
參數 | 作用 |
-b | 將可執行文件(binary)當做文本文件(test)來搜索 |
-c | 僅顯示找到的次數 |
-i | 忽略大小寫 |
-n | 顯示行號 |
-v | 反向選擇——僅列出沒有“關鍵詞”的行 |
查找文件
find [查找路徑] 尋找條件 操作
“~”代表家目錄
“.”代表當目錄
“/”代表根目錄
參數 | 作用 |
-name | 匹配名稱 |
-perm | 匹配權限(mode為完全匹配,-mode為包含即可) |
-user | 匹配所有者 |
-group | 匹配所有組 |
-mtime -n +n | 匹配修改內容的時間(-n 指n內,+n 指n天以前) |
-atime -n +n | 匹配訪問文件的時間(-n 指n內,+n 指n天以前) |
-ctime -n +n | 匹配修改權限的時間(-n 指n內,+n 指n天以前) |
-nouser | 匹配無所有者的文件 |
-nogroup | 匹配無所有組的文件 |
-newerrr f1 !f2 | 匹配比文件f1新卻比文件f2舊得文件 |
-type b/d/c/p/l/f | 匹配文件類型(塊設備、目錄、字符設備、管道、鏈接文件、文本文件) |
-size | 匹配文件大小(+50k查找超過50k的文件,而-50k則代表查找小於50k的文件) |
-prune | 忽略某個目錄 |
-exec {} \; | 後面可接對搜索到結果進一步處理的命令 |
新手必須掌握的Linux命令