linux 達(dá)人養(yǎng)成計(jì)劃1
1. mkdir 創(chuàng)建目錄
-p 遞歸創(chuàng)建
2. cd
- 進(jìn)入上一次目錄
3. pwd 顯示當(dāng)前路徑
4. rmdir 刪除空白目錄
5. rm 刪除文件或目錄 多個(gè)文件用空格間隔
-r 刪除文件夾
-f 強(qiáng)制執(zhí)行
6. cp 復(fù)制命令
-r 復(fù)制目錄
-p 連帶文件屬性復(fù)制
-d 若源文件是鏈接文件,則復(fù)制鏈接屬性
-a 相當(dāng)于 -pdr
7. mv 剪切/改名 當(dāng)源文件與目標(biāo)文件同文件夾為改名
8. touch 創(chuàng)建文本文件
9. ln 創(chuàng)建硬鏈接,指向同一個(gè)文件湿镀,節(jié)點(diǎn)相同荒揣,不能跨分區(qū)
-s 軟連接,可以跨分區(qū)绷杜。 請注意創(chuàng)建軟連接時(shí)的路徑(建議寫成絕對路徑),相當(dāng)于windows的快捷方式
10. locate 搜索命令(搜索文件)
11. whereis 搜索命令的命令
-b 只查找執(zhí)行文件
-m 只查找?guī)椭募?/p>
12. whoami 當(dāng)前登錄用戶是誰
13. whatis ls 查找命令的作用
14. which ls 查詢命令所在的位置,如果有別名闹炉,顯示別名
15. find 查詢命令 例: find /root -name abc (完全匹配)
通配符:
* 匹配任意內(nèi)容
? 匹配任意一個(gè)字符
[] 匹配任意一個(gè)中括號內(nèi)的內(nèi)容
-iname 查詢不區(qū)分大小寫
-user root 查詢所有者為root的文件
-nouser 查詢沒有所有者的文件
-mtime -10(10天內(nèi)) 10(10天 當(dāng)天) +10(10天前) 修改時(shí)間
-size 文件大小 -(小于) +(大于) (什么都不寫 等于) k(kb) M(兆)
-a ?同時(shí)滿足
-o 滿足一個(gè)就行
-inum ?2258 查找i節(jié)點(diǎn)為2285的文件
-exec 連貫操作 結(jié)尾必須為 {}\;
16. grep 查詢符合條件的字符串
-i 忽略大小寫
-v 排除指定的字符串
17. man ls 幫助命令查詢命令的使用文檔
18. ls --help 獲取命令選項(xiàng)的幫助
19. help cd 獲取shell內(nèi)部命令的幫助
20. whereis cd 確定是否是shell內(nèi)部命令
21. zip 壓縮命令 壓縮成 .zip結(jié)尾的壓縮包?例: zip abc.zip abc
-r 壓縮源目錄
22. unzip 解壓縮 例: unzip abc.zip
23. gzip 壓縮命令 壓縮成 .gz 結(jié)尾的壓縮包 例:gzip abc.txt ? 注:只能壓縮文件不能壓縮文件夾
-r 壓縮目錄下的子文件,但是不能壓縮目錄
-d 解壓縮,源文件會(huì)消失
24. bzip2 壓縮命令 壓縮成 .bz2 結(jié)尾的壓縮包 例:bzip2 abc.txt 注:只能壓縮文件不能壓縮文件夾
-k 保留原文件
-d 解壓縮
25. tar 打包命令
-c 打包
-v 顯示過程
-f 指定打包后的文件名
-x 解壓
-z 壓縮命令 結(jié)尾 .tar.gz
-j 壓縮命令 結(jié)尾 .tar.bz2
25. shutdown ?關(guān)機(jī)命令 ? 例: shutdown -h 5:30 ? ? 5:30關(guān)機(jī)
-h 關(guān)機(jī)
-c 取消前一個(gè)命令
-r 重啟
26. logout 退出登錄
27. chmod 修改文件權(quán)限 ?r=4 (可讀) w=2 (可寫) x=1 (可執(zhí)行)
28. echo 輸出命令
-e 支持反斜線字符串轉(zhuǎn)換
\e[1; + 顏色編碼 ? ? \e[0m 關(guān)閉顏色
\n 換行
\r 回車
\v 垂直制表符
\o+八進(jìn)制數(shù)
\x+十六進(jìn)制數(shù)
-a 輸出警告音
-b 向左刪除一個(gè)字符
29. 編寫shell腳本第一句 #!/bin/bash
30. alias 查詢系統(tǒng)中所有的命令別名
31. unalias + 命令 刪除別名命令
/root/.bashrc ?想讓別名永久生效润樱,請寫入這個(gè)文件中 root用戶
/home/用戶名/.bashre 想讓別名永久生效渣触,請寫入這個(gè)文件中 普通用戶
32. 命令生效順序:
1) 執(zhí)行用絕對路徑或相對路徑執(zhí)行的命令
2) 執(zhí)行別名
3) 執(zhí)行Bash內(nèi)部命令
4) 執(zhí)行按照$PATH環(huán)境變量定義的目錄查找順序找到的第一個(gè)命令
33. xshell快捷鍵
1) ctrl+c 強(qiáng)制終止當(dāng)前命令
2) ctrl+l 清屏
3) ctrl+a 光標(biāo)移動(dòng)到命令行首
4) ctrl+e 光標(biāo)移動(dòng)到命令行尾
5) ctrl+u 從光標(biāo)所在位置刪除到行首
6) ctrl+z 把命令放入后臺執(zhí)行
7) ctrl+r 在歷史命令中搜索
34. history 查看歷史命令
-c 清空歷史命令
-w 把緩存種的歷史命令寫入歷史命令保存文件中 ?歷史記錄保存位置:~/.bash_history
35. 修改文件/etc/profile種的HISTSIZE 可以修改歷史記錄保存最大條數(shù)
36. 歷史命令的調(diào)用
1) 使用上下箭頭掉用以前的歷史命令
2) !n重復(fù)執(zhí)行第n條歷史命令
3) !! 重復(fù)執(zhí)行上一條命令
4) !字符串 重復(fù)執(zhí)行最后一條以該字符串開頭的命令
37. tab鍵補(bǔ)全 沒有重復(fù)開頭的自動(dòng)補(bǔ)全,有重復(fù)的按兩次列出所有
38. > 輸出重定向,將執(zhí)行結(jié)果輸出到文件中如果沒有則創(chuàng)建
39. >> ?輸出重定向壹若,不會(huì)覆蓋文件內(nèi)容
40. 2> 輸出重定向嗅钻,將報(bào)錯(cuò)信息保存如文件中
41. 2>> 輸出重定向 將報(bào)錯(cuò)信息保存入文件,不會(huì)報(bào)錯(cuò)
例:
ifconfig >> test.log 2>&1 無論正確錯(cuò)誤都保存
42. 正確輸出和錯(cuò)誤輸出同時(shí)保存:
1) 命令>文件 2>&1 以覆蓋的方式保存
2) 命令>文件 2>&1 以追加的方式保存
3) 命令 &>1 以覆蓋的方式保存
4) 命令 &>1?以追加的方式保存
5) ?命令 >> 文件1 2>> 文件2 正確的追加文件1 錯(cuò)誤的追加文件2
6) 命令 > 文件1 2>文件2 正確的覆蓋文件1 錯(cuò)誤的覆蓋文件2
1) 和 3) 等效
2) 和 4) 等效
43. wc 輸入重定向
-c 統(tǒng)計(jì)字節(jié)數(shù)
-w 統(tǒng)計(jì)單詞書
-l 統(tǒng)計(jì)行數(shù)
< 導(dǎo)入文件
<< + 單詞 在碰到相同單詞時(shí)會(huì)停止
44. 多命令順序執(zhí)行
1) ?; 命令1 ; 命令2 多個(gè)命令順序執(zhí)行,命令之間沒有任何邏輯關(guān)系
2) && 命令1 && 命令2 邏輯與 當(dāng)命令1正確執(zhí)行,則命令2執(zhí)行店展, 當(dāng)命令1執(zhí)行不正確养篓,那么命令2不會(huì)執(zhí)行
3) || ?命令1 || 命令2 ?當(dāng)命令1執(zhí)行不正確 命令2才會(huì)執(zhí)行 , 當(dāng)命令1執(zhí)行正確赂蕴,那么命令2則不會(huì)執(zhí)行
45. 管道副
1) | 命令1 | 命令2 命令1正確輸出作為命令2的操作隊(duì)形
例:
netstat -an | grep ESTABLISHED 查詢服務(wù)器連接了多少個(gè)客戶端
netstat -an | grep ESTABLISHED | wc -l 查詢服務(wù)器連接了多少個(gè)客戶端柳弄,數(shù)字顯示
46. 通配符
1) ? 匹配任意一個(gè)字符
2) * 匹配0個(gè)活任意多個(gè)任意字符,也就是說可以匹配任何內(nèi)容
3) [] 匹配中括號內(nèi)任意一個(gè)字符, 例如[abc] 代表一定匹配一個(gè)字符或是a,或是b,或是c
4) [-] 匹配中括號內(nèi)任意一個(gè)字符,例如[a-z] 代表匹配任意一個(gè)小寫字母
5) [^] 邏輯非 匹配不是中括號內(nèi)的任意字符,例如概说,[^0-9]代表匹配不是數(shù)字的字符
47. Bash中其他特殊符號
1) '' 單引號,在單引號中所有的特殊符號碧注,例如$ 和 ` 都沒有特殊含義
2) "" 雙引號 在雙引號中所有的特殊符號都沒有特殊意義嚣伐,但是"$","`","\",是例外,擁有"調(diào)用變量值","引用命令"和"轉(zhuǎn)義符"的特殊含義
3) `` 反引號萍丐,反引號括起來的是系統(tǒng)命令轩端,在Bash中會(huì)先執(zhí)行它,和$()作用一樣,不過推薦使用$(),因?yàn)榉匆柗浅H菀卓村e(cuò)
4) # 在shell腳本中,#開頭的代表注釋
5) $ 用于調(diào)用變量的值,如果需要調(diào)用變量name的值時(shí)逝变,需要使用$name的方式得到變量的值
6) \ 轉(zhuǎn)義符, 跟在\之后的特殊符號將失去特殊含義,變成普通字符基茵。例如\$ 將輸出$符號,而不是當(dāng)做變量引用