注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡操作系統(tǒng)Bash Cookbook 中文版

Bash Cookbook 中文版

Bash Cookbook 中文版

定 價:¥59.00

作 者: [加] 羅恩·布拉什(Ron Brash) 著,王林生 譯
出版社: 人民郵電出版社
叢編項:
標 簽: 暫缺

ISBN: 9787115527011 出版時間: 2020-03-01 包裝: 平裝
開本: 16開 頁數(shù): 206 字數(shù):  

內容簡介

  Bash(Bourne-Again SHell)是為GNU計劃編寫的UNIX shell,現(xiàn)在是絕大多數(shù)Linux發(fā)行版和macOS X的默認shell。雖然各種操作系統(tǒng)的GUI界面已經(jīng)非常完善,但是shell編程仍然起著不可忽視的作用。本書將側重點放在Ubuntu環(huán)境下的Bash用法上,通過8章內容,循序漸進地介紹了Bash腳本的編寫技巧。本書涉及Bash相關的基礎知識、文本與文件處理、理解并掌控文件系統(tǒng)等內容。對Linux/UNIX系統(tǒng)管理員和運維人員來講,shell也是他們每天都要打交道的一款功能強大的工具。因此,深入地了解和熟練地掌握shell編程,是每一個Linux/UNIX/OS X用戶的必修功課之一。

作者簡介

  羅恩·布拉什(Ron Brash)是一家公司的CTO和聯(lián)合創(chuàng)始人。他創(chuàng)立的公司是一家成功的技術咨詢公司,提供了眾多領域的服務,不過主要集中在自由開源軟件(Free Open Source Software,F(xiàn)OSS)和Linux方面。7年多來,羅恩一直從事嵌入式系統(tǒng)的研究,為工控系統(tǒng)和數(shù)據(jù)采集與監(jiān)控系統(tǒng)(Supervisory Control And Data Acquisition,SCADA)網(wǎng)絡提供了安全性和網(wǎng)絡連通性,在這些系統(tǒng)之上運行的都是經(jīng)過優(yōu)化的嵌入式Linux。羅恩會定期參加FOSS和社區(qū)活動,并在恰當?shù)臅r機反饋意見,除此之外,他還舉辦小型研討會,因為他非常樂于分享知識。加內什·奈克(Ganesh Naik)同時身兼作者、顧問以及嵌入式Android、嵌入式Linux、物聯(lián)網(wǎng)和ML相關產(chǎn)品開發(fā)的企業(yè)培訓師。他在IT領域擁有20多年的經(jīng)驗和項目成就。曾在印度空間研究組織(Indian Space Research Organization)、英特爾、通用電氣、三星、摩托羅拉、檳城技能開發(fā)中心(Penang Skills Development Center)以及新加坡和印度的多家公司擔任企業(yè)培訓師。他創(chuàng)辦了一家名為Levana Technologies的公司,并從事咨詢和培訓活動。

圖書目錄

第 1章 Bash速成 1
1.1 Bash和CLI基礎知識入門 2
1.2 基本變量的創(chuàng)建和使用 6
1.3 Bash隱藏變量和保留字 9
1.4 使用if、else、elseif進行條件
邏輯判斷 11
1.4.1 評估數(shù)值 12
1.4.2 評估字符串 13
1.4.3 嵌套if語句 14
1.5 case/switch語句和循環(huán)結構 14
1.5.1 基本的case語句 15
1.5.2 基本循環(huán) 16
1.6 使用函數(shù)和參數(shù) 17
1.7 包含源文件 19
1.8 檢索返回碼和輸出 20
1.9 使用管道連接多個命令以及輸入/
輸出重定向 23
1.10 獲取程序輸入?yún)?shù) 26
1.11 獲取命令相關的額外信息 28
1.12 小結 29
第 2章 文本與文件處理 30
2.1 簡介 30
2.2 基本的字符串和文件搜索 32
2.2.1 準備工作 32
2.2.2 實戰(zhàn)演練 33
2.2.3 工作原理 34
2.3 使用通配符和正則表達式 36
2.3.1 準備工作 37
2.3.2 實戰(zhàn)演練 38
2.3.3 工作原理 39
2.4 腳本中的數(shù)學運算 43
2.4.1 準備工作 44
2.4.2 實戰(zhàn)演練 45
2.4.3 工作原理 47
2.5 用Bash提取/更改/排序/刪除/
搜索字符串 49
2.5.1 準備工作 50
2.5.2 實戰(zhàn)演練 50
2.5.3 工作原理 54
2.6 使用sed和awk刪除/
替換子串 57
2.6.1 準備工作 57
2.6.2 實戰(zhàn)演練 58
2.6.3 工作原理 60
2.7 使用echo和printf格式化數(shù)據(jù)/
輸出 62
2.7.1 準備工作 63
2.7.2 實戰(zhàn)演練 63
2.7.3 工作原理 65
2.8 腳本國際化 66
2.8.1 準備工作 67
2.8.2 實戰(zhàn)演練 68
2.8.3 工作原理 70
2.9 根據(jù)文件內容統(tǒng)計并減少重復 73
2.9.1 準備工作 74
2.9.2 實戰(zhàn)演練 74
2.9.3 工作原理 74
2.10 在條件邏輯中使用文件屬性 76
2.10.1 準備工作 77
2.10.2 實戰(zhàn)演練 77
2.10.3 工作原理 78
2.11 讀取被分隔的數(shù)據(jù)并更改輸出
格式 81
2.11.1 準備工作 82
2.11.2 實戰(zhàn)演練 83
2.11.3 工作原理 84
第3章 精通文件系統(tǒng) 86
3.1 簡介 86
3.2 多角度瀏覽文件—head、tail、
less和more 87
3.2.1 準備工作 87
3.2.2 實戰(zhàn)演練 87
3.2.3 工作原理 88
3.3 按照名稱或擴展名搜索文件 90
3.3.1 準備工作 92
3.3.2 實戰(zhàn)演練 92
3.3.3 工作原理 93
3.4 用diff命令比較文件
差異并修補 95
3.4.1 準備工作 96
3.4.2 實戰(zhàn)演練 96
3.4.3 工作原理 97
3.5 創(chuàng)建并有效地使用符號鏈接 99
3.5.1 實戰(zhàn)演練 100
3.5.2 工作原理 101
3.6 爬取文件系統(tǒng)并打印目錄樹 102
3.6.1 準備工作 102
3.6.2 實戰(zhàn)演練 102
3.6.3 工作原理 104
3.7 查找并刪除重復的文件或
目錄 104
3.7.1 準備工作 105
3.7.2 實戰(zhàn)演練 106
3.7.3 工作原理 107
3.8 在任意位置合并和切分文件 108
3.8.1 準備工作 109
3.8.2 實戰(zhàn)演練 109
3.8.3 工作原理 111
3.9 生成各種大小的數(shù)據(jù)集和隨機
文件 112
3.9.1 準備工作 113
3.9.2 實戰(zhàn)演練 113
3.9.3 工作原理 115
第4章 像守護進程一樣的腳本 116
4.1 簡介 116
4.2 使用循環(huán)或遞歸持續(xù)運行
程序 117
4.2.1 準備工作 117
4.2.2 實戰(zhàn)演練 118
4.2.3 工作原理 119
4.3 在注銷后保持程序/腳本繼續(xù)
運行 120
4.3.1 準備工作 120
4.3.2 實戰(zhàn)演練 121
4.3.3 工作原理 122
4.4 調用特權命令 123
4.4.1 準備工作 124
4.4.2 實戰(zhàn)演練 125
4.4.3 工作原理 126
4.5 凈化用戶輸出并獲得可復現(xiàn)的
結果 126
4.5.1 準備工作 127
4.5.2 實戰(zhàn)演練 127
4.5.3 工作原理 130
4.6 使用select創(chuàng)建簡單的多級
菜單 131
4.6.1 準備工作 131
4.6.2 實戰(zhàn)演練 132
4.6.3 工作原理 133
4.7 生成并捕獲信號 133
4.7.1 準備工作 134
4.7.2 實戰(zhàn)演練 134
4.7.3 工作原理 135
4.8 在腳本中使用臨時文件和鎖
文件 135
4.8.1 準備工作 136
4.8.2 實戰(zhàn)演練 136
4.8.3 工作原理 137
4.9 利用超時等待命令完成 137
4.9.1 準備工作 138
4.9.2 實戰(zhàn)演練 138
4.9.3 工作原理 139
4.10 創(chuàng)建FIFO和并行進程 141
4.10.1 準備工作 141
4.10.2 實戰(zhàn)演練 141
4.10.3 工作原理 142
4.11 在系統(tǒng)啟動時執(zhí)行腳本 143
4.11.1 準備工作 144
4.11.2 實戰(zhàn)演練 146
4.11.3 工作原理 147
第5章 系統(tǒng)管理腳本 148
5.1 簡介 148
5.2 收集和匯總系統(tǒng)信息 149
5.2.1 準備工作 149
5.2.2 實戰(zhàn)演練 149
5.2.3 工作原理 150
5.3 收集網(wǎng)絡信息和診斷網(wǎng)絡
連通性 152
5.3.1 準備工作 152
5.3.2 實戰(zhàn)演練 153
5.3.3 工作原理 153
5.4 配置基本的網(wǎng)絡連接 154
5.4.1 準備工作 154
5.4.2 實戰(zhàn)演練 154
5.4.3 工作原理 154
5.5 監(jiān)視目錄和文件 155
5.5.1 準備工作 155
5.5.2 實戰(zhàn)演練 155
5.5.3 工作原理 155
5.6 文件的壓縮和歸檔 155
5.6.1 準備工作 156
5.6.2 實戰(zhàn)演練 156
5.6.3 工作原理 157
5.7 日志文件輪替 157
5.7.1 準備工作 158
5.7.2 實戰(zhàn)演練 158
5.7.3 工作原理 159
5.8 使用iptables設置Linux
防火墻 160
5.8.1 準備工作 160
5.8.2 實戰(zhàn)演練 160
5.8.3 工作原理 161
5.9 從遠程或本地訪問SQL
數(shù)據(jù)庫 161
5.9.1 準備工作 161
5.9.2 實戰(zhàn)演練 161
5.9.3 工作原理 163
5.10 創(chuàng)建SSH密鑰,實現(xiàn)無密碼
遠程訪問 163
5.10.1 準備工作 163
5.10.2 實戰(zhàn)演練 163
5.11 創(chuàng)建和配置用于任務調度的
cron作業(yè) 164
5.11.1 實戰(zhàn)演練 164
5.11.2 工作原理 165
5.12 系統(tǒng)化地創(chuàng)建用戶和組 166
5.12.1 實戰(zhàn)演練 166
5.12.2 工作原理 166
第6章 高級用戶專用腳本 167
6.1 簡介 167
6.1.1 創(chuàng)建syslog條目并生成
警報 168
6.1.2 實戰(zhàn)演練 168
6.1.3 工作原理 169
6.2 使用dd備份和擦除磁盤及
分區(qū) 169
6.2.1 準備工作 169
6.2.2 實戰(zhàn)演練 169
6.2.3 工作原理 170
6.3 在命令行中創(chuàng)建圖形化界面 170
6.3.1 準備工作 170
6.3.2 實戰(zhàn)演練 170
6.3.3 工作原理 171
6.4 檢查文件完整性 172
6.4.1 準備工作 172
6.4.2 實戰(zhàn)演練 172
6.4.3 工作原理 173
6.5 掛載網(wǎng)絡文件系統(tǒng) 174
6.5.1 準備工作 174
6.5.2 實戰(zhàn)演練 174
6.5.3 工作原理 174
6.6 在命令行中瀏覽Web頁面 175
6.6.1 準備工作 175
6.6.2 實戰(zhàn)演練 175
6.6.3 工作原理 175
6.7 捕獲網(wǎng)絡流量 176
6.7.1 準備工作 176
6.7.2 實戰(zhàn)演練 176
6.7.3 工作原理 177
6.8 查找可執(zhí)行文件的依賴關系 177
6.8.1 準備工作 177
6.8.2 實戰(zhàn)演練 177
6.8.3 工作原理 178
6.9 獲取不同時區(qū)的時間 178
6.9.1 準備工作 178
6.9.2 實戰(zhàn)演練 178
6.9.3 工作原理 179
6.10 在腳本中加密/解密文件 179
6.10.1 準備工作 179
6.10.2 實戰(zhàn)演練 179
6.10.3 工作原理 179
第7章 Bash致勝之道 180
7.1 簡介 180
7.2 創(chuàng)建一個簡易實用的HTTP
服務器 181
7.2.1 準備工作 181
7.2.2 實戰(zhàn)演練 181
7.2.3 工作原理 182
7.3 解析RSS feed 182
7.3.1 準備工作 182
7.3.2 實戰(zhàn)演練 182
7.3.3 工作原理 182
7.4 爬取Web頁面 182
7.4.1 準備工作 183
7.4.2 實戰(zhàn)演練 183
7.4.3 工作原理 183
7.5 制作簡單的IRC聊天機器人 183
7.5.1 準備工作 183
7.5.2 實戰(zhàn)演練 183
7.5.3 工作原理 184
7.6 阻止SSH訪問已失效的IP
地址 184
7.6.1 準備工作 184
7.6.2 實戰(zhàn)演練 185
7.6.3 工作原理 185
7.7 使用Bash播放和管理音頻
文件 185
7.7.1 準備工作 185
7.7.2 實戰(zhàn)演練 186
7.7.3 工作原理 186
7.8 搭建簡單的NAT和DMZ
防火墻 186
7.8.1 準備工作 186
7.8.2 實戰(zhàn)演練 186
7.8.3 工作原理 187
7.9 解析GitHub項目并生成
報告 187
7.9.1 準備工作 187
7.9.2 實戰(zhàn)演練 187
7.9.3 工作原理 188
7.10 創(chuàng)建初級的遠程增量 188
7.10.1 準備工作 188
7.10.2 實戰(zhàn)演練 188
7.10.3 工作原理 188
7.11 使用Bash腳本監(jiān)視udev
輸入 189
7.11.1 準備工作 189
7.11.2 實戰(zhàn)演練 189
7.11.3 工作原理 189
7.12 使用Bash監(jiān)視并優(yōu)化電池
容量 190
7.12.1 準備工作 190
7.12.2 實戰(zhàn)演練 190
7.12.3 工作原理 191
7.13 使用chroot和受限shell保護
腳本安全 191
7.13.1 準備工作 191
7.13.2 實戰(zhàn)演練 191
7.13.3 工作原理 192
第8章 高級腳本技術 193
8.1 簡介 193
8.2 計算腳本的運行時間 194
8.2.1 準備工作 194
8.2.2 實戰(zhàn)演練 194
8.2.3 工作原理 194
8.3 編寫單行條件語句和循環(huán)
語句 194
8.3.1 準備工作 194
8.3.2 實戰(zhàn)演練 194
8.3.3 工作原理 195
8.4 避免出現(xiàn)“command not found”
警告/錯誤 195
8.4.1 準備工作 195
8.4.2 實戰(zhàn)演練 195
8.4.3 工作原理 196
8.5 創(chuàng)建可與腳本配合使用的配置
文件 196
8.5.1 準備工作 197
8.5.2 實戰(zhàn)演練 197
8.5.3 工作原理 197
8.6 更改命令行配色 198
8.6.1 準備工作 198
8.6.2 實戰(zhàn)演練 198
8.6.3 工作原理 199
8.7 創(chuàng)建命令別名 200
8.7.1 準備工作 200
8.7.2 實戰(zhàn)演練 200
8.7.3 工作原理 200
8.8 向原始終端設備回顯輸出 200
8.8.1 準備工作 201
8.8.2 實戰(zhàn)演練 201
8.8.3 工作原理 201
8.9 為Bash腳本創(chuàng)建簡單的前端
GUI 201
8.9.1 準備工作 202
8.9.2 實戰(zhàn)演練 202
8.9.3 工作原理 204
8.10 編譯并安裝自制的Bash shell
腳本 204
8.10.1 準備工作 204
8.10.2 實戰(zhàn)演練 204
8.10.3 工作原理 205
8.11 錄制終端會話 205
8.11.1 準備工作 205
8.11.2 實戰(zhàn)演練 205
8.11.3 工作原理 205
8.12 編寫高質量腳本 205
8.12.1 準備工作 206
8.12.2 實戰(zhàn)演練 206
8.12.3 工作原理 206

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號