瀏覽紀錄

TOP
1/1
庫存:5
Bash Cookbook 中文版(簡體書)
人民幣定價:59元
定  價:NT$354元
優惠價: 87308
可得紅利積點:9 點

庫存:5

商品簡介

作者簡介

名人/編輯推薦

目次

Bash(Bourne-Again SHell)是為GNU計劃編寫的UNIX shell,現在是絕大多數Linux發行版和macOS X的默認shell。雖然各種操作系統的GUI界面已經非常完善,但是shell編程仍然起著不可忽視的作用。
本書將側重點放在Ubuntu環境下的Bash用法上,通過8章內容,循序漸進地介紹了Bash腳本的編寫技巧。本書涉及Bash相關的基礎知識、文本與文件處理、理解並掌控文件系統等內容。
對Linux/UNIX系統管理員和運維人員來講,shell也是他們每天都要打交道的一款功能強大的工具。因此,深入地瞭解和熟練地掌握shell編程,是每一個Linux/UNIX/OS X用戶的必修功課之一。
羅恩·布拉什(Ron Brash),是一家公司的CTO和聯合創始人。他創立的公司是一家成功的技術諮詢公司,提供了眾多領域的服務,不過主要集中在自由開源軟件(Free Open Source Software,FOSS)和Linux方面。7年多來,羅恩一直從事嵌入式系統的研究,為工控系統和數據採集與監控系統(Supervisory Control And Data Acquisition,SCADA)網絡提供了安全性和網絡連通性,在這些系統之上運行的都是經過優化的嵌入式Linux。羅恩會定期參加FOSS和社區活動,並在恰當的時機反饋意見,除此之外,他還舉辦小型研討會,因為他非常樂於分享知識。
加內什·奈克(Ganesh Naik),同時身兼作者、顧問以及嵌入式Android、嵌入式Linux、物聯網和ML相關產品開發的企業培訓師。他在IT領域擁有20多年的經驗和項目成就。曾在印度空間研究組織(Indian Space Research Organization)、英特爾、通用電氣、三星、摩托羅拉、檳城技能開發中心(Penang Skills Development Center)以及新加坡和印度的多家公司擔任企業培訓師。他創辦了一家名為Levana Technologies的公司,並從事諮詢和培訓活動。
1.示例居多,以練代學,提升讀者的理解能力和動手能力。
2.側重於使用腳本來自定執行單調和重複的任務,將運維人員從這些“體力”勞動中解放出來。
3.所列舉的程序示例有別於現有的其他圖書,比較新鮮(比如用腳本實現數據爬取)
第 1章 Bash速成1
1.1 Bash和CLI基礎知識入門2
1.2 基本變量的創建和使用6
1.3 Bash隱藏變量和保留字9
1.4 使用if、else、elseif進行條件
邏輯判斷11
1.4.1 評估數值12
1.4.2 評估字符串13
1.4.3 嵌套if語句14
1.5 case/switch語句和循環結構14
1.5.1 基本的case語句15
1.5.2 基本循環16
1.6 使用函數和參數17
1.7 包含源文件19
1.8 檢索返回碼和輸出20
1.9 使用管道連接多個命令以及輸入/
輸出重定向23
1.10 獲取程序輸入參數26
1.11 獲取命令相關的額外信息28
1.12 小結29

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

購物須知

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約20個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。