跟老韓學(xué)Linux自動(dòng)化運(yùn)維(基礎(chǔ)篇)
定 價(jià):109.8 元
- 作者:韓艷威
- 出版時(shí)間:2022/9/1
- ISBN:9787115562326
- 出 版 社:人民郵電出版社
- 中圖法分類:TP316.85
- 頁(yè)碼:406
- 紙張:
- 版次:01
- 開本:16開
本書全面、系統(tǒng)地介紹 Shell 的各個(gè)知識(shí)點(diǎn)及其在企業(yè)環(huán)境中的具體應(yīng)用。本書主要內(nèi)容包括 Shell腳本編程、Shell變量與字符串、Shell正則表達(dá)式與文本處理、Shell條件測(cè)試和循環(huán)語句、Shell數(shù)組與函數(shù)、Linux自動(dòng)化運(yùn)維等。
本書適合 Linux 系統(tǒng)管理員閱讀,也適合軟件開發(fā)人員、軟件測(cè)試人員及數(shù)據(jù)庫(kù)管理人員學(xué)習(xí),也可以作為大專院校計(jì)算機(jī)相關(guān)專業(yè)師生的學(xué)習(xí)用書以及培訓(xùn)機(jī)構(gòu)的教材。
系統(tǒng)地介紹 Shell 的各個(gè)知識(shí)點(diǎn)及其在企業(yè)環(huán)境中的具體應(yīng)用,著重講解shell編程及相關(guān)工具在Linux自動(dòng)化運(yùn)維管理中的實(shí)際應(yīng)用。
內(nèi)容涵蓋: Shell腳本編程、Shell變量與字符串、Shell正則表達(dá)式與文本處理、Shell條件測(cè)試和循環(huán)語句、Shell數(shù)組與函數(shù)、Linux自動(dòng)化運(yùn)維等。
掃碼即刻獲取讀者交流服務(wù)號(hào),作者隨時(shí)為您解答在學(xué)習(xí)過程中的重點(diǎn)、難點(diǎn)操作技巧。
韓艷威,從事Linux運(yùn)維工作多年,在大中型互聯(lián)網(wǎng)公司擔(dān)任過Linux技術(shù)經(jīng)理、大數(shù)據(jù)架構(gòu)師等職位,不僅對(duì)Linux自動(dòng)化運(yùn)維、Linux性能監(jiān)控與調(diào)優(yōu)、開源Hadoop及阿里云大數(shù)據(jù)等有較為深刻的認(rèn)知,而且對(duì)Python、Java、Scala等編程語言有深刻的理解。熱愛分享技術(shù),曾多次在51CTO、異步社區(qū)、思否編程等平臺(tái)分享Linux技術(shù)。
第 1章 Shell腳本編程入門 1
1.1 熟練掌握Linux指令的重要性 2
1.2 Shell的基本概念 3
1.2.1 熟練掌握Shell腳本的必要性 5
1.2.2 Shell腳本的基本結(jié)構(gòu) 5
1.2.3 編寫Shell腳本的兩種方法 6
1.2.4 Atom編輯器常用操作 7
1.2.5 編寫Shell腳本的通用規(guī)則 10
1.3 Shell腳本注釋 13
1.3.1 單行注釋 13
1.3.2 多行注釋 13
1.4 Shell腳本調(diào)試 17
1.4.1 使用trap指令 17
1.4.2 使用tee指令 19
1.4.3 使用Shell選項(xiàng) 20
1.5 掌握Shell編程 25
1.5.1 學(xué)Shell編程的建議 26
1.5.2 Shell腳本在應(yīng)用運(yùn)維中的定位 27
1.6 Shell編程特性 29
1.6.1 歷史指令history 29
1.6.2 補(bǔ)全指令與文件路徑 31
1.6.3 指令別名和指令執(zhí)行順序 31
1.6.4 Bash常用快捷鍵 33
1.6.5 Linux文件描述符 34
1.6.6 文件描述符應(yīng)用案例 36
1.6.7 標(biāo)準(zhǔn)輸入輸出和輸入輸出重定向 43
1.6.8 深入了解重定向 44
1.6.9 Here Document入門與進(jìn)階 48
1.6.10 通配符基礎(chǔ)和特殊 符號(hào) 51
1.6.11 將DOS格式轉(zhuǎn)換為 UNIX格式 56
1.7 Shell腳本運(yùn)維實(shí)戰(zhàn) 58
1.7.1 統(tǒng)計(jì)磁盤容量信息 58
1.7.2 統(tǒng)計(jì)磁盤容量信息腳本擴(kuò)展 58
1.7.3 復(fù)制文件到指定目錄 59
1.7.4 安裝LAMP菜單 59
1.8 Linux清空文件內(nèi)容的6種方法 61
1.8.1 重定向 62
1.8.2 true指令 62
1.8.3 cat、cp、dd指令與/dev/null設(shè)備 62
1.8.4 echo指令 63
1.8.5 truncate指令 64
1.8.6 一句話腳本 65
1.8.7 注意事項(xiàng) 66
1.9 Shell編程實(shí)用指令 67
1.9.1 read指令 67
1.9.2 sleep指令 70
1.9.3 date指令 71
1.9.4 sshpass指令 72
1.9.5 案例:crontab定時(shí)任務(wù)不執(zhí)行 78
1.10 Shell編程中的特殊字符 79
1.10.1 Shell通配符 79
1.10.2 Shell元字符 82
1.10.3 Shell轉(zhuǎn)義字符 82
1.11 本章練習(xí) 83
1.12 編寫Shell腳本經(jīng)驗(yàn) 85
1.13 本章總結(jié) 85
第 2章 Shell變量與字符串 86
2.1 Shell基礎(chǔ)知識(shí) 87
2.1.1 絕對(duì)路徑與相對(duì)路徑 87
2.1.2 顯示登錄信息數(shù)據(jù) 91
2.1.3 Bash環(huán)境變量加載過程 94
2.1.4 常用Bash基本特性 95
2.1.5 Shell一次性執(zhí)行多條指令 101
2.2 Shell變量與運(yùn)算符 103
2.2.1 變量基礎(chǔ)知識(shí) 103
2.2.2 Bash環(huán)境變量 106
2.2.3 Bash語言與位置參數(shù)變量 110
2.2.4 Bash預(yù)定義變量 110
2.2.5 變量的類型 117
2.3 Shell變量高級(jí)知識(shí) 119
2.3.1 變量刪除和替換 119
2.3.2 變量測(cè)試 120
2.3.3 變量的長(zhǎng)度 122
2.3.4 變量與eval指令 123
2.4 Shell運(yùn)算符 124
2.4.1 變量賦值 124
2.4.2 算術(shù)運(yùn)算符 125
2.5 Shell編程之特殊符號(hào) 126
2.5.1 雙引號(hào) 127
2.5.2 單引號(hào) 127
2.5.3 反引號(hào) 128
2.5.4 反斜線 128
2.6 Shell編程之字符串常用操作 130
2.6.1 獲取字符串的長(zhǎng)度 130
2.6.2 獲取子串的索引值 132
2.6.3 抽取字符串 134
2.6.4 Shell中字符串反轉(zhuǎn)的幾種技巧 135
2.6.5 字符串實(shí)例 137
2.6.6 字符串常用測(cè)試方法 141
2.7 Shell指令替換與數(shù)學(xué)運(yùn)算 144
2.7.1 指令替換 144
2.7.2 Shell數(shù)學(xué)運(yùn)算基礎(chǔ)知識(shí) 146
2.7.3 整數(shù)運(yùn)算之“$[]” 146
2.7.4 整數(shù)運(yùn)算之“(())” 147
2.7.5 整數(shù)運(yùn)算之let 147
2.7.6 整數(shù)運(yùn)算之expr 148
2.7.7 數(shù)學(xué)運(yùn)算之bc 151
2.8 本章練習(xí) 153
2.9 本章總結(jié) 156
第3章 Shell正則表達(dá)式與文本處理三劍客 157
3.1 正則表達(dá)式基礎(chǔ) 158
3.1.1 正則表達(dá)式的定義和分類 158
3.1.2 元字符 158
3.2 grep與正則表達(dá)式 159
3.2.1 grep基礎(chǔ)知識(shí) 159
3.2.2 grep與正則表達(dá)式 160
3.3 sed與正則表達(dá)式 170
3.3.1 sed語法與基礎(chǔ)指令 171
3.3.2 sed基本應(yīng)用 172
3.3.3 sed正則表達(dá)式應(yīng)用實(shí)例 178
3.4 awk與正則表達(dá)式 189
3.4.1 awk語法與基本指令 189
3.4.2 awk基礎(chǔ)應(yīng)用 192
3.4.3 awk數(shù)字表達(dá)式與運(yùn)算符 201
3.4.4 awk模式匹配 205
3.4.5 awk與正則表達(dá)式 208
3.5 awk數(shù)組與運(yùn)算符 220
3.5.1 數(shù)組基礎(chǔ)應(yīng)用實(shí)例 220
3.5.2 awk變量詳解 223
3.5.3 awk流程控制 228
3.5.4 awk分組統(tǒng)計(jì) 233
3.6 本章總結(jié) 236
第4章 Shell編程之文件查找與處理 237
4.1 find與正則表達(dá)式 238
4.1.1 find運(yùn)行機(jī)制 238
4.1.2 find運(yùn)算符表達(dá)式 239
4.1.3 find常用選項(xiàng)及實(shí)例 243
4.1.4 find進(jìn)階實(shí)例 247
4.1.5 find中的exec與xargs 249
4.2 文本處理指令 257
4.2.1 locate指令 257
4.2.2 which與whereis指令 262
4.2.3 cut指令 263
4.2.4 sort指令 264
4.2.5 tar指令 266
4.2.6 split指令 271
4.3 本章練習(xí) 273
4.4 本章總結(jié) 276
第5章 Shell條件測(cè)試和循環(huán)語句 277
5.1 Shell編程之字符串精講 278
5.1.1 獲取字符串長(zhǎng)度的3種方法 278
5.1.2 截取和替換字符串 279
5.2 Shell條件測(cè)試和表達(dá)式 281
5.2.1 條件測(cè)試 281
5.2.2 整數(shù)測(cè)試 284
5.2.3 文件狀態(tài)測(cè)試 286
5.2.4 復(fù)雜判斷邏輯運(yùn)算符 288
5.2.5 條件測(cè)試與其他常用運(yùn)算符 290
5.2.6 Shell常用測(cè)試指令與符號(hào) 291
5.3 Shell流程控制 293
5.3.1 if語句基礎(chǔ) 293
5.3.2 if語句嵌套 297
5.3.3 if else語句 298
5.3.4 if多分支語句 299
5.3.5 exit指令 300
5.3.6 case多條件判斷語句 302
5.4 Shell循環(huán) 304
5.4.1 帶列表的for循環(huán) 305
5.4.2 不帶列表的for循環(huán) 308
5.4.3 C風(fēng)格的for循環(huán) 308
5.4.4 until循環(huán)與while循環(huán) 309
5.5 循環(huán)控制語句 313
5.5.1 break語句控制循環(huán) 313
5.5.2 continue語句控制循環(huán) 315
5.5.3 select結(jié)構(gòu) 316
5.6 本章練習(xí) 317
5.7 本章總結(jié) 320
第6章 Shell數(shù)組與函數(shù) 321
6.1 Shell數(shù)組的定義和賦值 322
6.1.1 定義Shell數(shù)組的4種方法 322
6.1.2 為Shell數(shù)組賦值的4種方法 327
6.2 訪問和刪除數(shù)組 330
6.2.1 訪問數(shù)組 330
6.2.2 刪除數(shù)組 338
6.2.3 數(shù)組的其他常用操作 340
6.3 Shell函數(shù) 342
6.3.1 函數(shù)基礎(chǔ) 342
6.3.2 函數(shù)的返回值 346
6.3.3 別名和函數(shù) 349
6.3.4 函數(shù)中的全局變量和局部變量 350
6.3.5 函數(shù)參數(shù) 352
6.4 本章練習(xí) 353
6.5 本章總結(jié) 355
第7章 Linux自動(dòng)化運(yùn)維入門 356
7.1 SSH服務(wù)基礎(chǔ)精講 357
7.1.1 SSH服務(wù)工作原理 357
7.1.2 SSH服務(wù)安全相關(guān) 358
7.2 OpenSSH服務(wù)詳解 360
7.2.1 安裝OpenSSH服務(wù)套件 360
7.2.2 OpenSSH服務(wù)配置文件詳解 363
7.2.3 SSH服務(wù)雙機(jī)互信實(shí)現(xiàn) 364
7.2.4 SSH免密碼輸入執(zhí)行指令 365
7.3 SSH自動(dòng)化運(yùn)維精講 368
7.3.1 SSH遠(yuǎn)程執(zhí)行指令和腳本 368
7.3.2 SSH批量分發(fā)項(xiàng)目實(shí)例 370
7.4 自動(dòng)化運(yùn)維工具之pssh 371
7.4.1 pssh基礎(chǔ)概覽 371
7.4.2 pssh運(yùn)維實(shí)例精講 372
7.5 自動(dòng)化運(yùn)維工具之rsync 376
7.5.1 關(guān)于構(gòu)建備份服務(wù)器的一些思考 376
7.5.2 搭建rsync備份服務(wù)器 377
7.5.3 rsync服務(wù)器常用配置 381
7.5.4 rsync多模塊配置實(shí)例 382
7.5.5 rsync常用命令 384
7.6 定時(shí)任務(wù)與發(fā)送郵件 393
7.6.1 定時(shí)任務(wù)基礎(chǔ)知識(shí) 393
7.6.2 Windows定時(shí)任務(wù)實(shí)戰(zhàn)案例 394
7.6.3 定時(shí)任務(wù)at之案例 394
7.6.4 Linux定時(shí)任務(wù)crontab 397
7.7 crontab基礎(chǔ)知識(shí) 397
7.8 使用Mutt發(fā)送郵件 400
7.8.1 Mutt基礎(chǔ)知識(shí) 400
7.8.2 Mutt基本使用方法 401
7.8.3 使用第三方服務(wù)發(fā)送郵件 402
7.9 本章練習(xí) 403
7.10 本章總結(jié) 406