LINUX SHELL命令行及腳本編程實(shí)例詳解(第2版) 版權(quán)信息
- ISBN:9787302660194
- 條形碼:9787302660194 ; 978-7-302-66019-4
- 裝幀:平裝
- 冊(cè)數(shù):暫無(wú)
- 重量:暫無(wú)
- 所屬分類:>>
LINUX SHELL命令行及腳本編程實(shí)例詳解(第2版) 本書特色
“Linux典藏大系”暢銷15年,經(jīng)久不衰,累計(jì)銷售30萬(wàn)余冊(cè)。
廣受好評(píng)的Linux經(jīng)典暢銷書全新改版,ChinaUnix社區(qū)力薦。
《Linux Shell命令行及腳本編程實(shí)例詳解》第1版13次印刷,暢銷2萬(wàn)余冊(cè),銷量長(zhǎng)期居Shell圖書排行榜前列。
結(jié)合近700個(gè)實(shí)例,全面、系統(tǒng)地介紹Shell腳本編程的核心內(nèi)容。
內(nèi)容全面:詳解近50個(gè)Linux常用命令,并詳細(xì)介紹Shell腳本編程的精華。
循序漸進(jìn):從基本的Linux常用命令開始講解,逐步深入Linux Shell腳本編程。
講解細(xì)致:詳細(xì)介紹Linux Shell腳本編程涉及的概念、語(yǔ)法、命令、技巧和難點(diǎn)等。
經(jīng)驗(yàn)傳授:總結(jié)大量的經(jīng)驗(yàn)和技巧,盡可能消除學(xué)習(xí)中經(jīng)常會(huì)遇到的各種障礙。
實(shí)例豐富:每個(gè)知識(shí)點(diǎn)都結(jié)合實(shí)例進(jìn)行講解,盡可能避免枯燥乏味的純理論講解。
視頻講解:專門為重點(diǎn)內(nèi)容錄制多媒體教學(xué)視頻,幫助讀者高效、直觀地學(xué)習(xí)。
提供習(xí)題:每章都提供習(xí)題,幫助讀者鞏固和自測(cè)重點(diǎn)內(nèi)容的掌握情況。
注重技巧:各章都配思維導(dǎo)圖,并提供命令和關(guān)鍵字助記技巧,容易記憶。
叢書15年經(jīng)久不衰,暢銷30萬(wàn)冊(cè),前版暢銷2萬(wàn)冊(cè),全新改版,視頻+導(dǎo)圖+PPT…
LINUX SHELL命令行及腳本編程實(shí)例詳解(第2版) 內(nèi)容簡(jiǎn)介
本書是獲得大量讀者好評(píng)的“Linux典藏大系”中的經(jīng)典暢銷書《Linux Shell命令行及腳本編程實(shí)例詳解》的第2版。本書第1版累計(jì)13次印刷,銷量超過(guò)2萬(wàn)冊(cè),被ChinaUnix技術(shù)社區(qū)大力推薦。本書理論結(jié)合實(shí)踐,全面、系統(tǒng)地介紹Linux Shell(Bash)腳本編程的語(yǔ)法、命令和技巧等內(nèi)容!禠inux Shell命令行及腳本編程實(shí)例詳解(第2版)》偏重于實(shí)踐,在講解理論知識(shí)時(shí)結(jié)合大量典型實(shí)例讓讀者了解理論知識(shí)在實(shí)際環(huán)境中的應(yīng)用,并對(duì)易混淆和較難理解的知識(shí)點(diǎn)做了重點(diǎn)分析,以加深讀者對(duì)知識(shí)的理解!禠inux Shell命令行及腳本編程實(shí)例詳解(第2版)》提供教學(xué)視頻、實(shí)例源程序、思維導(dǎo)圖、教學(xué)PPT和習(xí)題參考答案等超值配套資源,以幫助讀者高效、直觀地學(xué)習(xí)。
《Linux Shell命令行及腳本編程實(shí)例詳解(第2版)》共15章,分為2篇。第1篇“Linux Shell基礎(chǔ)知識(shí)與命令”,主要內(nèi)容包括Linux和Linux Shell簡(jiǎn)介、初識(shí)Linux Shell、常用的Shell(Bash)命令、Shell命令進(jìn)階;第2篇“Shell腳本編程”,主要內(nèi)容包括Shell編程基礎(chǔ)、Shell的條件執(zhí)行、Bash循環(huán)、Shell函數(shù)、正則表達(dá)式、腳本輸入處理、Shell重定向、管道和過(guò)濾器、捕獲、sed和awk、其他Linux Shell概述。
《Linux Shell命令行及腳本編程實(shí)例詳解(第2版)》非常適合初次接觸Linux Shell命令行和腳本編程的入門讀者閱讀,也適合有一定基礎(chǔ)而想進(jìn)一步提升的進(jìn)階讀者閱讀,還適合作為高等院校和Linux培訓(xùn)機(jī)構(gòu)的教材。對(duì)于基于Linux平臺(tái)的開發(fā)人員而言,《Linux Shell命令行及腳本編程實(shí)例詳解(第2版)》還是一本的案頭查詢手冊(cè)。
LINUX SHELL命令行及腳本編程實(shí)例詳解(第2版) 目錄
目錄
第1篇 Linux Shell基礎(chǔ)知識(shí)與命令
第1章 Linux和Linux Shell簡(jiǎn)介 2
1.1 關(guān)于Linux 2
1.1.1 什么是Linux 2
1.1.2 誰(shuí)創(chuàng)建了Linux 3
1.1.3 Linux在日常生活中的應(yīng)用 3
1.1.4 Linux內(nèi)核是什么 3
1.1.5 Linux的理念 4
1.2 什么是Linux Shell 4
1.3 Shell的種類 5
1.4 怎樣使用Shell 7
1.5 Shell腳本是什么 7
1.6 為什么使用Shell腳本 8
1.7 實(shí)例:創(chuàng)建**個(gè)Shell腳本 8
1.8 小結(jié) 9
1.9 習(xí)題 10
第2章 初識(shí)Linux Shell 11
2.1 Bash概述 11
2.1.1 Bash簡(jiǎn)介 11
2.1.2 Bash的改進(jìn) 11
2.2 Shell在Linux環(huán)境中的角色 12
2.2.1 與登錄Shell相關(guān)的文件 12
2.2.2 Bash啟動(dòng)腳本 12
2.2.3 實(shí)例:定制自己的Bash登錄腳本 13
2.2.4 Bash退出腳本 15
2.2.5 實(shí)例:定制自己的Bash退出腳本 15
2.2.6 有效地登錄Shell的路徑 15
2.3 Shell變量 16
2.3.1 變量的類型 16
2.3.2 實(shí)例:如何定義變量并給變量賦值 18
2.3.3 變量的命名規(guī)則 19
2.3.4 實(shí)例:使用echo和printf命令打印變量的值 20
2.3.5 變量的引用 23
2.3.6 實(shí)例:export語(yǔ)句的使用 24
2.3.7 實(shí)例:如何刪除變量 25
2.3.8 實(shí)例:如何檢查變量是否存在 26
2.4 Shell環(huán)境進(jìn)階 26
2.4.1 實(shí)例:回調(diào)歷史命令 26
2.4.2 實(shí)例:Shell的擴(kuò)展部分 28
2.4.3 實(shí)例:創(chuàng)建和使用別名 30
2.4.4 實(shí)例:修改Bash提示符 32
2.4.5 實(shí)例:設(shè)置Shell選項(xiàng) 34
2.5 小結(jié) 37
2.6 習(xí)題 38
第3章 常用的Shell(Bash)命令 39
3.1 查看文件和目錄 39
3.1.1 ls命令實(shí)例:列出文件名和目錄 39
3.1.2 cat命令實(shí)例:連接顯示文件內(nèi)容 43
3.1.3 less和more命令實(shí)例:分屏顯示文件 45
3.1.4 head命令實(shí)例:顯示文件的頭部?jī)?nèi)容 47
3.1.5 tail命令實(shí)例:顯示文件的尾部?jī)?nèi)容 48
3.1.6 file命令實(shí)例:查看文件類型 49
3.1.7 wc命令實(shí)例:查看文件的統(tǒng)計(jì)信息 50
3.1.8 find命令實(shí)例:查找文件或目錄 51
3.2 操作文件和目錄 52
3.2.1 touch命令實(shí)例:創(chuàng)建文件 52
3.2.2 mkdir命令實(shí)例:創(chuàng)建目錄 53
3.2.3 cp命令實(shí)例:復(fù)制文件或目錄 54
3.2.4 ln命令實(shí)例:鏈接文件或目錄 55
3.2.5 mv命令實(shí)例:重命名文件或目錄 56
3.2.6 rm命令實(shí)例:刪除文件或目錄 57
3.3 管理文件和目錄的權(quán)限 58
3.3.1 ls -l:顯示文件和目錄的權(quán)限 58
3.3.2 chmod命令實(shí)例:修改權(quán)限 59
3.3.3 chown和chgrp命令實(shí)例:修改文件的所有者和用戶組 61
3.3.4 設(shè)置setuid和setgid權(quán)限位實(shí)例:設(shè)置用戶和組權(quán)限位 63
3.4 文本處理 64
3.4.1 sort命令實(shí)例:文本排序 64
3.4.2 uniq命令實(shí)例:文本去重 66
3.4.3 tr命令實(shí)例:替換或刪除字符 68
3.4.4 grep命令實(shí)例:查找字符串 69
3.4.5 diff命令實(shí)例:比較兩個(gè)文件 70
3.5 其他常用的命令 72
3.5.1 hostname命令實(shí)例:查看主機(jī)名 72
3.5.2 w和who命令實(shí)例:列出系統(tǒng)登錄的用戶 73
3.5.3 uptime命令實(shí)例:查看系統(tǒng)運(yùn)行時(shí)間 74
3.5.4 uname命令實(shí)例:查看系統(tǒng)信息 74
3.5.5 date命令實(shí)例:顯示和設(shè)置系統(tǒng)日期和時(shí)間 75
3.5.6 id命令實(shí)例:顯示用戶屬性 76
3.6 小結(jié) 77
3.7 習(xí)題 78
第4章 Shell命令進(jìn)階 80
4.1 文件處理和歸檔 80
4.1.1 paste命令實(shí)例:合并文件 80
4.1.2 dd命令實(shí)例:備份和復(fù)制文件 82
4.1.3 gzip和bzip2命令實(shí)例:壓縮和歸檔文件 83
4.1.4 gunzip和bunzip2命令實(shí)例:解壓縮文件 84
4.1.5 tar命令實(shí)例:打包和解包文件 84
4.2 監(jiān)測(cè)和管理磁盤 86
4.2.1 mount和umount命令實(shí)例:掛載和卸載存儲(chǔ)介質(zhì) 86
4.2.2 df命令實(shí)例:報(bào)告文件系統(tǒng)磁盤空間的利用率 88
4.2.3 du命令實(shí)例:評(píng)估文件空間的利用率 89
4.3 后臺(tái)執(zhí)行命令 91
4.3.1 crond和crontab命令實(shí)例:執(zhí)行計(jì)劃任務(wù) 91
4.3.2 at命令實(shí)例:在指定時(shí)間執(zhí)行命令 92
4.3.3 &控制操作符實(shí)例:將任務(wù)放在后臺(tái)運(yùn)行 94
4.3.4 nohup命令實(shí)例:運(yùn)行一個(gè)對(duì)掛起“免疫”的命令 95
4.4 小結(jié) 95
4.5 習(xí)題 96
第2篇 Shell腳本編程
第5章 Shell編程基礎(chǔ) 100
5.1 Shell腳本的**行“#!” 100
5.2 Shell腳本注釋 100
5.3 實(shí)例:如何設(shè)置腳本的權(quán)限并執(zhí)行腳本 101
5.4 Shell變量進(jìn)階 102
5.4.1 Bash的參數(shù)擴(kuò)展 102
5.4.2 Bash的內(nèi)部變量 106
5.4.3 Bash的位置參數(shù)和特殊參數(shù) 108
5.4.4 實(shí)例:使用declare指定變量的類型 110
5.4.5 Bash的數(shù)組變量 111
5.5 Shell算術(shù)運(yùn)算 112
5.5.1 Bash的算術(shù)運(yùn)算符 112
5.5.2 數(shù)字常量 114
5.5.3 使用算術(shù)擴(kuò)展和let命令進(jìn)行算術(shù)運(yùn)算 115
5.5.4 實(shí)例:使用expr命令 116
5.6 退出腳本 117
5.6.1 退出狀態(tài)碼 117
5.6.2 實(shí)例:使用exit命令 118
5.7 實(shí)例:調(diào)試腳本 119
5.8 Shell腳本編程風(fēng)格 121
5.9 小結(jié) 122
5.10 習(xí)題 123
第6章 Shell的條件執(zhí)行 124
6.1 條件測(cè)試 124
6.1.1 實(shí)例:使用test命令 124
6.1.2 if結(jié)構(gòu)的語(yǔ)法格式 129
6.1.3 實(shí)例:if…else…fi語(yǔ)句 130
6.1.4 實(shí)例:嵌套的if…else語(yǔ)句 131
6.1.5 實(shí)例:多級(jí)的if…elif…else…fi 132
6.2 條件執(zhí)行 133
6.2.1 實(shí)例:邏輯與&& 133
6.2.2 實(shí)例:邏輯或|| 138
6.2.3 實(shí)例:邏輯非! 141
6.3 case語(yǔ)句實(shí)例 141
6.4 小結(jié) 143
6.5 習(xí)題 144
第7章 Bash循環(huán) 145
7.1 for循環(huán) 145
7.1.1 for循環(huán)的語(yǔ)法 145
7.1.2 實(shí)例:嵌套for循環(huán)語(yǔ)句 147
7.2 while循環(huán) 148
7.2.1 while循環(huán)的語(yǔ)法 148
7.2.2 實(shí)例:定義無(wú)限while循環(huán) 150
7.3 until循環(huán)語(yǔ)句實(shí)例 152
7.4 select循環(huán)語(yǔ)句實(shí)例 153
7.5 循環(huán)控制 154
7.5.1 實(shí)例:break語(yǔ)句 154
7.5.2 實(shí)例:continue語(yǔ)句 156
7.6 小結(jié) 157
7.7 習(xí)題 157
第8章 Shell函數(shù) 159
8.1 函數(shù)的定義 159
8.2 函數(shù)的參數(shù)、變量與返回值 160
8.2.1 實(shí)例:向函數(shù)傳遞參數(shù) 160
8.2.2 本地變量 161
8.2.3 實(shí)例:使用return命令 163
8.2.4 實(shí)例:函數(shù)返回值測(cè)試 163
8.3 函數(shù)的調(diào)用 164
8.3.1 實(shí)例:在Shell命令行中調(diào)用函數(shù) 164
8.3.2 實(shí)例:在腳本中調(diào)用函數(shù) 164
8.3.3 實(shí)例:從函數(shù)文件中調(diào)用函數(shù) 165
8.3.4 實(shí)例:遞歸函數(shù)調(diào)用 168
8.4 實(shí)例:將函數(shù)放在后臺(tái)運(yùn)行 168
8.5 小結(jié) 170
8.6 習(xí)題 170
第9章 正則表達(dá)式 171
9.1 正則表達(dá)式簡(jiǎn)介 171
9.1.1 正則表達(dá)式的定義 171
9.1.2 正則表達(dá)式的類型 171
9.1.3 POSIX字符類 172
9.1.4 Bash正則表達(dá)式比較操作符 173
9.2 正則表達(dá)式應(yīng)用基礎(chǔ) 174
9.2.1 實(shí)例:使用句點(diǎn)(.)匹配單字符 174
9.2.2 實(shí)例:使用插入符號(hào)(^)進(jìn)行匹配 175
9.2.3 實(shí)例:使用美元符號(hào)($)進(jìn)行匹配 175
9.2.4 實(shí)例:使用星號(hào)(*)進(jìn)行匹配 175
9.2.5 實(shí)例:使用方括號(hào)([ ])進(jìn)行匹配 176
9.2.6 實(shí)例:使用問(wèn)號(hào)(?)進(jìn)行匹配 176
9.2.7 實(shí)例:使用加號(hào)(+)進(jìn)行匹配 176
9.2.8 實(shí)例:使用(?|regex)進(jìn)行匹配 177
9.2.9 實(shí)例:使用(?<=regex) 和(?”的區(qū)別 241
12.1.2 為什么使用管道 242
12.1.3 實(shí)例:使用管道連接程序 242
12.1.4 實(shí)例:管道中的輸入重定向 244
12.1.5 實(shí)例:管道中的輸出重定向 245
12.2 過(guò)濾器 246
12.2.1 實(shí)例:在管道中使用awk命令 247
12.2.2 實(shí)例:在管道中使用cut命令 248
12.2.3 實(shí)例:在管道中使用grep命令 248
12.2.4 實(shí)例:在管道中使用tar命令 249
12.2.5 實(shí)例:在管道中使用head命令 250
12.2.6 實(shí)例:在管道中使用paste命令 250
12.2.7 實(shí)例:在管道中使用sed命令 251
12.2.8 實(shí)例:在管道中使用sort命令 252
12.2.9 實(shí)例:在管道中使用split命令 253
12.2.10 實(shí)例:在管道中使用strings命令 253
12.2.11 實(shí)例:在管道中使用tail命令 254
12.2.12 實(shí)例:在管道中使用tee命令 254
12.2.13 實(shí)例:在管道中使用tr命令 256
12.2.14 實(shí)例:在管道中使用uniq命令 257
12.2.15 實(shí)例:在管道中使用wc命令 257
12.3 小結(jié) 258
12.4 習(xí)題 258
第13章 捕獲 259
13.1 信號(hào) 259
13.1.1 Linux中的信號(hào) 259
13.1.2 信號(hào)的名稱和值 260
13.1.3 Bash中的信號(hào) 262
13.2 進(jìn)程 263
13.2.1 什么是進(jìn)程 263
13.2.2 前臺(tái)進(jìn)程和后臺(tái)進(jìn)程 264
13.2.3 進(jìn)程的狀態(tài) 265
13.2.4 實(shí)例:怎樣查看進(jìn)程 265
13.2.5 實(shí)例:向進(jìn)程發(fā)送信號(hào) 268
13.2.6 關(guān)于子Shell 269
13.3 捕獲 273
13.3.1 trap語(yǔ)句 273
13.3.2 實(shí)例:使用trap語(yǔ)句捕獲信號(hào) 275
13.3.3 實(shí)例:移除捕獲 279
13.4 小結(jié) 280
13.5 習(xí)題 281
第14章 sed和awk 283
14.1 sed編輯器基礎(chǔ) 283
14.1.1 sed簡(jiǎn)介 283
14.1.2 sed的模式空間 284
14.2 sed的基本命令 285
14.2.1 追加、更改和插入命令 286
14.2.2 刪除命令 288
14.2.3 替換命令 288
14.2.4 打印命令 290
14.2.5 打印行號(hào)命令 291
14.2.6 讀取下一行命令 292
14.2.7 讀和寫文件命令 293
14.2.8 退出命令 297
14.3 sed命令實(shí)例 298
14.3.1 實(shí)例:向文件中添加或插入行 298
14.3.2 實(shí)例:更改文件中指定的行 300
14.3.3 實(shí)例:刪除文件中的行 300
14.3.4 實(shí)例:替換文件中的內(nèi)容 302
14.3.5 實(shí)例:打印文件中的行 305
14.3.6 實(shí)例:打印文件中的行號(hào) 308
14.3.7 實(shí)例:從文件中讀取和向文件中寫入 308
14.4 sed與Shell 312
14.4.1 實(shí)例:在sed中使用Shell變量 312
14.4.2 實(shí)例:從sed輸出中設(shè)置shell變量 318
14.5 awk基礎(chǔ) 319
14.5.1 awk簡(jiǎn)介 319
14.5.2 awk的基本語(yǔ)法 320
14.5.3 **個(gè)awk命令 321
14.5.4 使用awk打印指定的列 322
14.5.5 從awk程序文件中讀取awk命令 322
14.5.6 awk的BEGIN和END塊 323
14.5.7 在awk中使用正則表達(dá)式 323
14.5.8 awk的表達(dá)式和塊 323
14.5.9 awk的條件語(yǔ)句 324
14.5.10 awk的變量和操作符 325
14.5.11 awk的特殊變量 326
14.5.12 awk的循環(huán)結(jié)構(gòu) 327
14.5.13 awk的數(shù)組 328
14.6 awk與Shell 329
14.6.1 實(shí)例:在awk中使用Shell變量 329
14.6.2 實(shí)例:從awk命令的輸出中設(shè)置Shell變量 330
14.7 awk命令實(shí)例 332
14.7.1 實(shí)例:使用awk編寫字符統(tǒng)計(jì)工具 332
14.7.2 實(shí)例:使用awk程序統(tǒng)計(jì)文件的總列數(shù) 333
14.7.3 實(shí)例:使用awk自定義顯示文件的屬性信息 334
14.7.4 實(shí)例:使用awk顯示ASCII字符 335
14.7.5 實(shí)例:使用awk獲取進(jìn)程號(hào) 337
14.8 小結(jié) 339
14.9 習(xí)題 341
第15章 其他Linux Shell概述 343
15.1 C Shell概述 343
15.1.1 csh簡(jiǎn)介 343
15.1.2 csh的特性 344
15.1.3 csh的內(nèi)部變量 345
15.1.4 csh的內(nèi)部命令 345
15.1.5 tcsh在csh基礎(chǔ)上的新特性 349
15.2 Korn Shell概述 358
15.2.1 ksh簡(jiǎn)介 358
15.2.2 ksh的特性 359
15.2.3 ksh的內(nèi)部變量 363
15.2.4 ksh的內(nèi)部命令 365
15.2.5 增強(qiáng)的ksh93u+ 372
15.3 Z Shell概述 376
15.3.1 zsh簡(jiǎn)介 377
15.3.2 zsh的特性 377
15.3.3 zsh的內(nèi)部變量 377
15.3.4 zsh的內(nèi)部命令 378
15.4 小結(jié) 378
15.5 習(xí)題 379
展開全部
LINUX SHELL命令行及腳本編程實(shí)例詳解(第2版) 作者簡(jiǎn)介
劉艷濤,就職于一家全球500強(qiáng)通信公司,從事公司無(wú)線產(chǎn)品研發(fā)中心的Linux/Unix操作系統(tǒng)的管理和技術(shù)支持。有超過(guò)15年的Linux系統(tǒng)管理與運(yùn)維經(jīng)驗(yàn),擅長(zhǎng)用Shell等腳本語(yǔ)言實(shí)現(xiàn)自動(dòng)化運(yùn)維管理,以及配置Nagios與Ganglia集成的自動(dòng)化監(jiān)控和故障報(bào)警平臺(tái),對(duì)Linux系統(tǒng)性能優(yōu)化有深入的研究。