命令參數有長格式和短格式,長格式前置 -- ,短格式前置 -,只有短格式命令可以合並,前置一個 -
1. man cmd // 幫助信息
man tail // 列出 tail 命令的幫助信息
2. whereis cmd // 查詢命令的路徑
which cmd
3. echo // 在終端輸出字符串或者變量的值
echo bobolili
echo $PATH
4. date // 顯示及設置系統的時間
date -s "20190901 8:30:00" // 設置系統時間
date "+%Y-%m-%d %H:%M:%S" //按指定格式輸出日期時間,注意格式前有個 + 號
5. reboot // 重啟系統
6. poweroff // 關閉系統
7. wget [...] url // 下載網絡文件
8. ps [...] // 查看系統進程狀態
-a 顯示所有進程 -u 顯示用戶及其他詳細信息 -x 顯示沒有控制終端的進程 ps -aux // 查看各個進程詳細信息,可結合管道使用
9. top // 動態監視進程活動與負載信息
10. pidof // 根據服務名稱查看進程PID
pidof sshd
11. kill pid // 終止指定的 pid 服務
12. killall // 終止某個指定名稱的服務所對應的全部進程
killall tmsserver
13. ifconfig // 查看網卡配置與網絡狀態信息
14. uname -a // 查看系統內核與系統版本信息
15. uptime // 查看系統化運行時間、啟用的終端數量、平均負載信息
16. free -h // 顯示系統內存使用信息
17. who // 查看當前登入主機的用戶的終端信息
18. history // 查看歷史命令
history -c // 清除歷史命令 !命令編碼 // 執行編碼對應的命令, 如 !3 cat ~/.bash_history // 查看歷史命令文件,history -c 不會清除改文件
19. pwd // 顯示用戶當前工作目錄
20. cd // 切換工作路徑
21. ls // 顯示目錄中的文件信息
22. cat -n filename // 查看內容較少的純文本文件
23. more filename // 查看內容較多的文件
24. head -n Nfilename // 查看文件的第 N 行
25. tail // 查看文件的后 N 行或查看持續更新的內容
tail -n 20 // 查看后20行
tail -f // 查看持續更新
26. tr // 替換文本文件的字符
27. wc // 統計指定文本的行數、字數、字節數
如果要統計當前文件夾下子文件個數,可以結合 ll 用此命令
root@Kylin:/home/ceph-service/ceph/build/bin# ll | wc 36 317 2430
28. stat // 查看文件的具體存儲信息和時間等信息
29. cut // 按列提取文本字符
cut -d: -f1 /etc/passwd // 查看以 :分割的,第1列內容
30. diff // 用於比較文本文件的差異
diff --brief ddd.txt main.js // 比較文件是否相同
diff -c ddd.txt main.js // 描述文件內容的具體不同之處
31. touch // 創建空白文件或者設置文件的相關時間
touch aaa.txt // 創建一個名為 aaa.txt 的空文件
touch -a filename // 修改文件的訪問(讀取)時間
-m // 修改文件的修改時間
-d // 修改文件的訪問與修改時間
32. mkdir // 創建空白目錄
mkdir dir // 創建名稱為 dir 的空目錄
mkdir -p a/b/c // 遞歸創建目錄
33. cp [參數] srcFile dstFile // 復制文件或目錄
-r // 遞歸持續復制,用於目錄 -i // 若目標文件存在則詢問是否覆蓋 -p // 保留原始文件熟悉 -d // 若對象為鏈接文件,則保留該鏈接文件的屬性
scp -rv root@192.168.2.220:/home/test.txt . // 復制遠程文件到當前目錄
ssh 服務安裝
#安裝 ssh 服務 apt-get install ssh #啟用密碼驗證 vim /etc/ssh/sshd_config PermitRootLogin prohibit-password 修改為 PermitRootLogin yes
#重啟服務
/etc/init.d/ssh restar
34. mv srcFile dstFile // 用於文件的重命名或者剪切
35. rm [參數] File // 刪除文件或者目錄
-f // 強制刪除,無提示 -r // 刪除目錄
36. dd if=iFile of=oFIle count=1 bs=560M // 按照指定大小和個數的數據塊來復制或者轉換文件
sudo dd if=/dev/zero of=./aaa bs=1M count=2 #創建一個2M的文件 aaa,用0充填內容
37. file filename // 查看文件類型
38. tar [選項] file
-c // 創建壓縮文件 -x // 解開壓縮文件 -t // 查看壓縮包有哪些內容 -z // 用 gzip 壓縮或解壓 -j // 用 bzip2 壓縮或解壓 -v // 顯示壓縮或解壓過程 -f // 目標文件名,必須放到最后一位,后跟要壓縮或解壓的文件名 -p // 保留原始的權限與屬性
39. grep 關鍵詞 [選項] filenaem // 在文本中執行關鍵詞搜索並輸出
-n // 顯示行數
-v // 反向選擇, not 操作
-E // or and 操作 ,注意 | 和 .* 符號
grep -v "a" test.txt // 不顯示帶 a 的 grep -E 'a|b' test.txt // 顯示包含 a 或 b 的 grep -E 'a.*b' test.txt t // 顯示包含 a 與 b 的 rm -rvf `ls | grep -v "build"` // 刪除文件名中不帶 build 的文件 rm -rvf `ls | grep -vE 'build|package'` // 刪除文件名中不帶 build 和 package 的文件
grep "sys/stat.h" -rn . // 遞歸查找當前目錄下所有文件中的 sys/stat.h
40. find 路徑 -name filename // 在指定路徑下按照特定條件查找文件
-name // 按文件名查找
-mtime [-n or +n] // 按內容修改的時間 -n 指 n 天內,+n 指 n 天前
-atime [-n or +n] // 按文件訪問的時間
-ctime [-n or +n] // 按文件權限修改的時間
-exec ...... {}\ // 后面可跟用於進一步處理搜索結果的命令
locate finename // 快速定位文件
41. 重定向
> filename // 將標准輸出重定向到文件中,覆蓋
>> filename // 將標准輸出重定向到文件中,追加
2> filename // 將錯誤輸出重定向到文件中,覆蓋
2>> filename // 將錯誤輸出重定向到文件中,追加
將錯誤輸出重定向到文件中對於執行 Shell 腳本比較有用,
可以把報錯信息記錄到文件中
42. | // 管道命令符,把前一個命令原本要輸出到屏幕的標准正常數據當做后一個命令的標准輸入
43. 通配符
* // 0 個或多個字符
? // 單個字符
[0-9] // 0~9 之間的單個數字的字符
[a-z] // a~z 之間的任意一個字符
[135abc] // 135abc 中的任意一個字符
44. 轉義符號
反引號(``) // 把其中的命令執行后返回結果,如: gdb -p `pidof tmsserver`
雙引號("") // 保留其中的變量屬性,不進行轉義處理, echo "$SHELL",輸出的是 $SHELL,而不是變量 SHELL 的值
反斜杠(\) // 使反斜杠后面的一個變量變為單純的字符,\$$SHELL,輸出的是 $/bin/bash
45. 環境變量
PATH=$PATH:/root/bin // 修改環境變量 PATH 的值
WORKDIR=/home/lyb // 當前用戶自定義一個變量
export WORKDIR // 導出 WORKDIR 變量為全局變量,所有用戶均可訪問
永久修改:
修改配置文件 /etc/profile
vim /etc/profile
如在里面加入: export PATH=$PATH:/home/lyb
讓/etc/profile文件修改后立即生效 ,可以使用如下命令:
source /etc/profile
共享庫配置文件
#cat /etc/ld.so.conf include ld.so.conf.d/*.conf #echo "/usr/local/lib" >> /etc/ld.so.conf #ldconfig
46. awk // 強大的處理文本命令 https://www.cnblogs.com/virgosnail/p/11103651.html
參數 -F // 指定分隔符,默認分隔符為空格
awk -F ':' '{print $1}'
如查看目錄下的文件名(只看文件名,一個文件一行,ls 可直接看)
root@Kylin:/home/ceph-service/ceph/ceph# ll | grep -v build | awk '{print $9}'
47. vim 文本編輯器命令
命令模式下命令:
dd // 刪除(剪切)光標處所在整行 yy // 復制光標處所在整行 p // 粘貼復制或剪切的整行數據到光標后 u // 撤銷上一步操作
G // 跳轉到尾行
gg // 跳轉到首行
$ // 跳轉到尾列
0 // 跳轉到首列
dG // 刪除全部
末行模式下命令:
:set nu // 顯示行號 :q! // 強制退出 :w // 保存 :q // 退出
? 字符串 // 在文本中從下至上搜索該字符串
/ 字符串 // 在文本中從上至下搜索該字符串
48. watch 監視
watch -d -n 5 ls -l // 監視目錄內容變化,變化的部分高亮顯示,5秒執行一次 ls
49. 查看系統相關信息
cat /proc/version // 查看當前操作系統版本信息
cat /etc/issue // 查看版本當前操作系統發行版信息
uname -a // 看版本當前操作系統內核信息,--help 查看具體選項
-----------------
RAID 與 LVM 磁盤陣列技術
mdadm // 創建、管理 RAID 磁盤陣列
===============================================