Linux Shell命令行及腳本編程實(shí)例詳解(Linux典藏大系)
定 價(jià):59.8 元
叢書名:Linux典藏大系
- 作者:劉艷濤
- 出版時(shí)間:2015/1/1
- ISBN:9787302378624
- 出 版 社:清華大學(xué)出版社
- 中圖法分類:H31
- 頁碼:
- 紙張:印 次:1
- 版次:1
- 開本:16開
本書理論結(jié)合實(shí)踐,全面、系統(tǒng)地介紹了Linux Shell(Bash)腳本編程的語法、命令、技巧等內(nèi)容。本書偏重于實(shí)踐教學(xué),在講解理論知識(shí)時(shí),通過一些典型實(shí)例讓讀者了解理論知識(shí)在實(shí)際環(huán)境中的應(yīng)用,并對(duì)易混淆和較難理解的知識(shí)點(diǎn)做了重點(diǎn)分析,以加深讀者對(duì)知識(shí)的理解。另外,作者專門為本書錄制了高清配套教學(xué)視頻,以幫助讀者高效學(xué)習(xí),同時(shí)也提供了本書實(shí)例源程序以方便讀者學(xué)習(xí)。
本書共15章,分為兩篇。主要內(nèi)容包括:Linux及Linux Shell簡介、初識(shí)Linux Shell、常用Shell(Bash)命令、Shell命令進(jìn)階、Shell編程基礎(chǔ)、Shell的條件執(zhí)行、Bash循環(huán)、Shell函數(shù)、正則表達(dá)式、腳本輸入處理、Shell重定向、管道和過濾器、捕獲、sed和awk,以及其他Linux Shell種類介紹。
本書使用了大量的實(shí)例詳細(xì)地介紹了Bash的語法及各種技巧,并以循序漸進(jìn)的方式講解了Linux Shell(Bash)的各種特性,讓讀者能夠迅速上手,并能學(xué)以致用。對(duì)于初次接觸Linux Shell的讀者,本書是一本很好的自學(xué)教材;對(duì)于接觸過Linux Shell的讀者,本書可以作為進(jìn)階讀物或隨時(shí)查閱的技術(shù)手冊(cè);另外,本書也可以作為高等學(xué)校相關(guān)專業(yè)的教材和各類培訓(xùn)學(xué)校的教材。
在當(dāng)今的互聯(lián)網(wǎng)世界,想必最為流行的一個(gè)詞就是“云計(jì)算”了,而且云計(jì)算又引領(lǐng)了大數(shù)據(jù)時(shí)代的到來。而Linux在推動(dòng)云計(jì)算方面起到了舉足輕重的作用。比如,當(dāng)今最著名的商業(yè)云計(jì)算平臺(tái)“亞馬遜彈性計(jì)算云(EC2)”就是基于Linux的。這就需要在Linux服務(wù)器上進(jìn)行大量的數(shù)據(jù)處理和管理工作,以及一些應(yīng)用的部署和監(jiān)測,這時(shí)就需要命令行和Shell腳本的幫助。在Linux系統(tǒng)中,我們通常是在命令行下完成一些管理和配置的任務(wù),并通過Shell腳本將一些重復(fù)或定期的任務(wù)自動(dòng)化,通過短短幾行腳本自動(dòng)地將大部分手頭工作搞定,從而節(jié)省大量的時(shí)間。而且理解Shell腳本也可以讓你更好地了解操作系統(tǒng)。Shell腳本還可以和許多外部命令行工具結(jié)合起來完成信息查詢、文本處理、任務(wù)定時(shí)自動(dòng)化以及監(jiān)測系統(tǒng)之類的工作。當(dāng)然,伴隨著這些便利性的還有巨大的破壞性。比如,稍不留神,你可能就會(huì)將整個(gè)根目錄全部毀掉,或者錯(cuò)誤地處理重要的配置文件。這時(shí),了解Linux命令行和Shell腳本相關(guān)的細(xì)節(jié)、遵循Linux使用規(guī)范就顯得尤其重要了。
本書面向系統(tǒng)管理員,基于Linux系統(tǒng)的軟件開發(fā)和測試人員,以及所有想有效使用Linux系統(tǒng)的愛好者。書中系統(tǒng)而全面地介紹了Shell(Bash)腳本編程的語法、命令和技巧等內(nèi)容,結(jié)合大量的實(shí)例進(jìn)行講解,你可以將其作為參考,或是作為自己編寫腳本時(shí)的靈感源泉。
關(guān)于“Linux典藏大系”
“Linux典藏大系”是清華大學(xué)出版社自2010年1月以來陸續(xù)推出的一個(gè)圖書系列,截止2013年,已經(jīng)出版了10余個(gè)品種。該系列圖書涵蓋了Linux技術(shù)的方方面面,可以滿足各個(gè)層次和各個(gè)領(lǐng)域的讀者學(xué)習(xí)Linux技術(shù)的需求。該系列圖書自出版以來獲得了廣大讀者的好評(píng),已經(jīng)成為了Linux圖書市場上最耀眼的明星品牌之一。其銷量在同類圖書中也名列前茅,其中一些圖書還獲得了“51CTO讀書頻道”頒發(fā)的“最受讀者喜愛的原創(chuàng)IT技術(shù)圖書獎(jiǎng)”。該系列圖書在出版過程中也得到了國內(nèi)Linux領(lǐng)域最知名的技術(shù)社區(qū)ChinaUnix(簡稱CU)的大力支持和幫助,讀者在CU社區(qū)中就圖書的內(nèi)容與活躍在CU社區(qū)中的Linux技術(shù)愛好者進(jìn)行廣泛交流,取得了良好的學(xué)習(xí)效果。
本書特色
1.視頻講解
為了幫助讀者更加高效、直觀地學(xué)習(xí),編著者為本書重點(diǎn)內(nèi)容專門錄制了配套教學(xué)視頻,需讀者自行下載。
2.內(nèi)容全面
本書將理論與實(shí)踐相結(jié)合,全面介紹了Linux系統(tǒng)的常用命令及Shell腳本編程所需的知識(shí)點(diǎn)。書中對(duì)Linux Shell腳本編程的基本概念、語法、命令、技巧和較難理解的知識(shí)點(diǎn)都配合圖示和實(shí)例進(jìn)行了詳細(xì)講解。
3.循序漸進(jìn)
本書從最基本的Linux Shell命令開始講解,逐步深入到Linux Shell腳本編程,讓讀者可以迅速掌握Linux Shell的各種特性,并能在實(shí)際開發(fā)中加以使用。
4.實(shí)例豐富
本書偏重于實(shí)踐教學(xué),書中的每一個(gè)理論知識(shí)都給出了具體的典型實(shí)例。例如,對(duì)每一個(gè)Linux常用命令、Linux Shell的相關(guān)概念及Shell腳本編程的相關(guān)知識(shí)等,都列舉了大量實(shí)例供讀者了解這些知識(shí)點(diǎn)在實(shí)際環(huán)境中的應(yīng)用。
5.經(jīng)驗(yàn)傳授
本書是基于編著者多年的Linux系統(tǒng)管理和Linux平臺(tái)程序設(shè)計(jì)的經(jīng)驗(yàn)總結(jié)而來,書中給出了大量的經(jīng)驗(yàn)和技巧,盡力消除讀者在學(xué)習(xí)Linux Shell編程時(shí)可能會(huì)遇到的各種障礙,從而更加迅速而高效地掌握Shell腳本編程。
本書內(nèi)容及體系結(jié)構(gòu)
第1篇 Linux Shell基礎(chǔ)和使用(第1~4章)
本篇介紹Linux命令行和Linux Shell的基礎(chǔ)知識(shí),包括Linux及Linux Shell簡介、Bash簡介、Bash啟動(dòng)和退出腳本、Shell中的變量、Shell中的擴(kuò)展、創(chuàng)建和使用別名,以及Shell下的常用命令等。這些內(nèi)容都是學(xué)習(xí)后續(xù)章節(jié)所必須要掌握的基礎(chǔ)知識(shí)。
第2篇 Shell 腳本編程(第5~15章)
本篇主要介紹Shell腳本編程所需的知識(shí),包括Shell腳本中的注釋、Shell變量進(jìn)階、Shell的算術(shù)運(yùn)算、如何退出腳本、如何調(diào)試腳本、Shell腳本編程風(fēng)格、Shell的條件執(zhí)行、Shell中的循環(huán)和控制語句、Shell函數(shù)、正則表達(dá)式、腳本的輸入處理、Shell重定向、管道和過濾器、Shell中的捕獲、sed和awk,以及其他Shell中的介紹等內(nèi)容。這些內(nèi)容幾乎涵蓋了日常使用Shell腳本編程的方方面面。
本書讀者對(duì)象
* Linux Shell編程入門新手;
* Linux Shell編程進(jìn)階人員;
* 廣大Linux程序設(shè)計(jì)人員;
* Linux系統(tǒng)管理員;
* 網(wǎng)站管理工程師;
* Linux培訓(xùn)機(jī)構(gòu)的學(xué)員;
* Linux Shell編程愛好者;
* 需要一本案頭必備查詢手冊(cè)的人員。
本書配套資源獲取方式
本書涉及的源程序和配套教學(xué)視頻等學(xué)習(xí)資料需要讀者自行下載。請(qǐng)到清華大學(xué)出版社的網(wǎng)站(www.tup.com.cn)上搜索到本書頁面,按提示下載。也可到本書服務(wù)網(wǎng)站www.wanjuanchina.net上的相關(guān)版塊下載。
關(guān)于編著者
本書由劉艷濤主筆編寫。其他參與編寫的人員有陳冠軍、陳浩、黃振東、蔣慶學(xué)、李代敘、李世民、李思清、李云龍、李志剛、劉存勇、劉燕珍、龍哲、呂軼、牟春梅、屈明環(huán)、石峰、史艷艷、宋寧寧、王德亮、王俊清、王雅寧、翁盛鑫。
您在閱讀本書的過程中若有疑問,請(qǐng)發(fā)E-mail和我們聯(lián)系。E-mail地址:bookservice2008@163.com。
編著者
第1篇 Linux Shell基礎(chǔ)和使用
第1章 Linux及Linux Shell簡介2
1.1 關(guān)于Linux2
1.1.1 什么是Linux2
1.1.2 誰創(chuàng)建了Linux3
1.1.3 Linux在日常生活中的使用3
1.1.4 Linux Kernel是什么3
1.1.5 Linux的理念4
1.2 什么是Linux Shell4
1.3 Shell的種類5
1.4 怎樣使用Shell6
1.5 Shell腳本是什么7
1.6 為什么使用Shell腳本8
1.7 實(shí)例:創(chuàng)建你的第一個(gè)Shell腳本8
1.8 小結(jié)9
第2章 初識(shí)Linux Shell10
2.1 Bash Shell10
2.1.1 Bash簡介10
2.1.2 Bash提供的改進(jìn)10
2.2 Shell在Linux環(huán)境中的角色11
2.2.1 與登錄Shell相關(guān)的文件11
2.2.2 Bash啟動(dòng)腳本11
2.2.3 實(shí)例:定制自己的Bash登錄腳本12
2.2.4 Bash退出腳本14
2.2.5 實(shí)例:定制自己的Bash退出腳本14
2.2.6 有效的登錄Shell的路徑15
2.3 Shell中的變量15
2.3.1 Shell中變量的類型15
2.3.2 實(shí)例:如何定義變量和給變量賦值17
2.3.3 變量命名規(guī)則19
2.3.4 實(shí)例:使用echo和printf打印變量的值19
2.3.5 變量的引用22
2.3.6 實(shí)例:export語句的使用23
2.3.7 實(shí)例:如何刪除變量25
2.3.8 實(shí)例:如何檢查變量是否存在25
2.4 Shell環(huán)境進(jìn)階26
2.4.1 實(shí)例:回調(diào)命令歷史26
2.4.2 實(shí)例:Shell中的擴(kuò)展27
2.4.3 實(shí)例:創(chuàng)建和使用別名30
2.4.4 實(shí)例:修改Bash提示符31
2.4.5 實(shí)例:設(shè)置Shell選項(xiàng)34
2.5 小結(jié)37
第3章 常用Shell(Bash)命令38
3.1 查看文件和目錄38
3.1.1 ls命令實(shí)例:列出文件名和目錄38
3.1.2 cat命令實(shí)例:連接顯示文件內(nèi)容42
3.1.3 less、more命令實(shí)例:分屏顯示文件43
3.1.4 head命令實(shí)例:顯示文件頭部46
3.1.5 tail命令實(shí)例:顯示文件尾部47
3.1.6 file命令實(shí)例:查看文件類型48
3.1.7 wc命令實(shí)例:查看文件統(tǒng)計(jì)信息50
3.1.8 find命令實(shí)例:查找文件或目錄50
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 文本處理65
3.4.1 sort命令實(shí)例:文本排序65
3.4.2 uniq命令實(shí)例:文本去重67
3.4.3 tr命令實(shí)例:替換或刪除字符68
3.4.4 grep命令實(shí)例:查找字符串70
3.4.5 diff命令實(shí)例:比較兩個(gè)文件71
3.5 其他常用命令73
3.5.1 hostname命令實(shí)例:查看主機(jī)名73
3.5.2 w、who命令實(shí)例:列出系統(tǒng)登錄的用戶74
3.5.3 uptime命令實(shí)例:查看系統(tǒng)運(yùn)行時(shí)間75
3.5.4 uname命令實(shí)例:查看系統(tǒng)信息75
3.5.5 date命令實(shí)例:顯示和設(shè)置系統(tǒng)日期和時(shí)間76
3.5.6 id命令實(shí)例:顯示用戶屬性78
3.6 小結(jié)79
第4章 Shell命令進(jìn)階81
4.1 文件處理和歸檔81
4.1.1 paster命令實(shí)例:合并文件81
4.1.2 dd命令實(shí)例:備份和拷貝文件83
4.1.3 gzip、bzip2命令實(shí)例:壓縮和歸檔文件84
4.1.4 gunzip、bunzip2命令實(shí)例:解壓縮文件85
4.1.5 tar命令實(shí)例:打包和解包文件85
4.2 監(jiān)測和管理磁盤87
4.2.1 mount、umount命令實(shí)例:掛載和卸載存儲(chǔ)介質(zhì)87
4.2.2 df命令實(shí)例:報(bào)告文件系統(tǒng)磁盤空間利用率90
4.2.3 du命令實(shí)例:評(píng)估文件空間利用率91
4.3 后臺(tái)執(zhí)行命令92
4.3.1 cron、crontab命令實(shí)例:執(zhí)行計(jì)劃任務(wù)92
4.3.2 at命令實(shí)例:在指定時(shí)間執(zhí)行命令94
4.3.3 and控制操作符實(shí)例:將任務(wù)放在后臺(tái)運(yùn)行95
4.3.4 nohup命令實(shí)例:運(yùn)行一個(gè)對(duì)掛起免疫的命令96
4.4 小結(jié)97
第2篇 Shell 腳本編程
第5章 Shell編程基礎(chǔ)100
5.1 Shell腳本的第一行“#!”(Shebang)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ù)109
5.4.4 實(shí)例:使用declare指定變量的類型112
5.4.5 Bash中的數(shù)組變量114
5.5 Shell算術(shù)運(yùn)算115
5.5.1 Bash的算術(shù)運(yùn)算符115
5.5.2 數(shù)字常量117
5.5.3 使用算術(shù)擴(kuò)展和let進(jìn)行算術(shù)運(yùn)算118
5.5.4 實(shí)例:使用expr命令119
5.6 退出腳本120
5.6.1 退出狀態(tài)碼120
5.6.2 實(shí)例:使用exit命令121
5.7 實(shí)例:調(diào)試腳本122
5.8 Shell腳本編程風(fēng)格125
5.9 小結(jié)126
第6章 Shell的條件執(zhí)行128
6.1 條件測試128
6.1.1 實(shí)例:使用test命令128
6.1.2 if結(jié)構(gòu)的語法格式133
6.1.3 實(shí)例:if…else…fi語句135
6.1.4 實(shí)例:嵌套的if/else語句136
6.1.5 實(shí)例:多級(jí)的if…elif…else…fi137
6.2 條件執(zhí)行139
6.2.1 實(shí)例:邏輯與“andand”139
6.2.2 實(shí)例:邏輯或“||”144
6.2.3 實(shí)例:邏輯非“!”147
6.3 case語句實(shí)例148
6.4 小結(jié)151
第7章 Bash循環(huán)152
7.1 for循環(huán)152
7.1.1 for循環(huán)語法152
7.1.2 實(shí)例:嵌套for循環(huán)語句156
7.2 while循環(huán)157
7.2.1 while循環(huán)語法157
7.2.2 實(shí)例:定義無限while循環(huán)160
7.3 until循環(huán)語句實(shí)例162
7.4 select循環(huán)語句實(shí)例163
7.5 循環(huán)控制165
7.5.1 實(shí)例:break語句165
7.5.2 實(shí)例:continue語句167
7.6 小結(jié)168
第8章 Shell函數(shù)170
8.1 函數(shù)的定義170
8.2 函數(shù)的參數(shù)、變量與返回值171
8.2.1 實(shí)例:向函數(shù)傳遞參數(shù)171
8.2.2 本地變量173
8.2.3 實(shí)例:使用return命令175
8.2.4 實(shí)例:函數(shù)返回值測試176
8.3 函數(shù)的調(diào)用176
8.3.1 實(shí)例:在Shell命令行調(diào)用函數(shù)176
8.3.2 實(shí)例:在腳本中調(diào)用函數(shù)177
8.3.3 實(shí)例:從函數(shù)文件中調(diào)用函數(shù)178
8.3.4 實(shí)例:遞歸函數(shù)調(diào)用181
8.4 實(shí)例:將函數(shù)放在后臺(tái)運(yùn)行182
8.5 小結(jié)184
第9章 正則表達(dá)式185
9.1 什么是正則表達(dá)式185
9.1.1 定義185
9.1.2 正則表達(dá)式類型185
9.1.3 POSIX字符類186
9.1.4 Bash正則表達(dá)式比較操作符187
9.2 正則應(yīng)用基礎(chǔ)189
9.2.1 實(shí)例:使用句點(diǎn).匹配單字符189
9.2.2 實(shí)例:使用插入符號(hào)^匹配190
9.2.3 實(shí)例:使用美元符$匹配190
9.2.4 實(shí)例:使用星號(hào)*匹配190
9.2.5 實(shí)例:使用方括號(hào)[ ]匹配191
9.2.6 實(shí)例:使用問號(hào)?匹配191
9.2.7 實(shí)例:使用加號(hào)+匹配191
9.3 小結(jié)192
第10章 腳本輸入處理193
10.1 參數(shù)處理193
10.1.1 實(shí)例:使用case語句處理命令行參數(shù)193
10.1.2 實(shí)例:使用shift命令處理命令行參數(shù)198
10.1.3 實(shí)例:使用for循環(huán)讀取多個(gè)參數(shù)201
10.1.4 實(shí)例:讀取腳本名203
10.1.5 實(shí)例:測試命令行參數(shù)204
10.2 選項(xiàng)處理206
10.2.1 實(shí)例:使用case語句處理命令行選項(xiàng)207
10.2.2 實(shí)例:使用getopts處理多命令行選項(xiàng)209
10.2.3 實(shí)例:使用getopt處理多命令行選項(xiàng)214
10.3 獲得用戶輸入221
10.3.1 實(shí)例:基本的讀取221
10.3.2 實(shí)例:輸入超時(shí)222
10.3.3 實(shí)例:隱藏方式讀取223
10.3.4 實(shí)例:從文件中讀取224
10.4 小結(jié)227
第11章 Shell重定向230
11.1 輸入和輸出230
11.1.1 標(biāo)準(zhǔn)輸入230
11.1.2 標(biāo)準(zhǔn)輸出232
11.1.3 標(biāo)準(zhǔn)錯(cuò)誤233
11.2 重定向233
11.2.1 文件重定向234
11.2.2 實(shí)例:從文件輸入236
11.2.3 實(shí)例:從文本或字符串輸入241
11.2.4 實(shí)例:空文件創(chuàng)建244
11.2.5 實(shí)例:/dev/null丟棄不需要的輸出245
11.2.6 實(shí)例:標(biāo)準(zhǔn)錯(cuò)誤重定向246
11.2.7 實(shí)例:標(biāo)準(zhǔn)輸出重定向246
11.2.8 實(shí)例:標(biāo)準(zhǔn)錯(cuò)誤和標(biāo)準(zhǔn)輸出同時(shí)重定向247
11.2.9 實(shí)例:追加重定向輸出247
11.2.10 實(shí)例:在單命令行進(jìn)行標(biāo)準(zhǔn)輸入輸出重定向247
11.3 文件描述符249
11.3.1 實(shí)例:使用exec命令249
11.3.2 實(shí)例:指定用于輸入的文件描述符251
11.3.3 實(shí)例:指定用于輸出的文件描述符254
11.3.4 實(shí)例:關(guān)閉文件描述符260
11.3.5 實(shí)例:打開用于讀和寫的文件描述符261
11.3.6 實(shí)例:在同一腳本中使用exec進(jìn)行輸入和輸出重定向261
11.4 小結(jié)264
第12章 管道和過濾器266
12.1 管道266
12.1.1 操作符“|”和“>”之間的區(qū)別266
12.1.2 為什么使用管道267
12.1.3 實(shí)例:使用管道連接程序267
12.1.4 實(shí)例:管道中的輸入重定向269
12.1.5 實(shí)例:管道中的輸出重定向270
12.2 過濾器271
12.2.1 實(shí)例:在管道中使用awk命令272
12.2.2 實(shí)例:在管道中使用cut命令273
12.2.3 實(shí)例:在管道中使用grep命令274
12.2.4 實(shí)例:在管道中使用tar命令275
12.2.5 實(shí)例:在管道中使用head命令275
12.2.6 實(shí)例:在管道中使用paste命令276
12.2.7 實(shí)例:在管道中使用sed命令277
12.2.8 實(shí)例:在管道中使用sort命令278
12.2.9 實(shí)例:在管道中使用split命令278
12.2.10 實(shí)例:在管道中使用strings命令279
12.2.11 實(shí)例:在管道中使用tail命令279
12.2.12 實(shí)例:在管道中使用tee命令280
12.2.13 實(shí)例:在管道中使用tr命令282
12.2.14 實(shí)例:在管道中使用uniq命令282
12.2.15 實(shí)例:在管道中使用wc命令283
12.3 小結(jié)283
第13章 捕獲284
13.1 信號(hào)284
13.1.1 Linux中的信號(hào)284
13.1.2 信號(hào)的名稱和值285
13.1.3 Bash中的信號(hào)287
13.2 進(jìn)程288
13.2.1 什么是進(jìn)程288
13.2.2 前臺(tái)進(jìn)程和后臺(tái)進(jìn)程289
13.2.3 進(jìn)程的狀態(tài)290
13.2.4 實(shí)例:怎樣查看進(jìn)程290
13.2.5 實(shí)例:向進(jìn)程發(fā)送信號(hào)294
13.2.6 關(guān)于子Shell296
13.3 捕獲300
13.3.1 trap語句300
13.3.2 實(shí)例:使用trap語句捕獲信號(hào)303
13.3.3 實(shí)例:移除捕獲308
13.4 小結(jié)309
第14章 sed和awk311
14.1 sed編輯器基礎(chǔ)311
14.1.1 sed簡介311
14.1.2 sed的模式空間312
14.2 基本的sed編輯命令313
14.2.1 追加、更改、插入編輯命令314
14.2.2 刪除編輯命令316
14.2.3 替換編輯命令316
14.2.4 打印編輯命令319
14.2.5 打印行號(hào)編輯命令319
14.2.6 讀取下一行編輯命令320
14.2.7 讀和寫文件編輯命令321
14.2.8 退出編輯命令325
14.3 sed命令實(shí)例326
14.3.1 實(shí)例:向文件中添加或插入行326
14.3.2 實(shí)例:更改文件中指定的行328
14.3.3 實(shí)例:刪除文件中的行328
14.3.4 實(shí)例:替換文件中的內(nèi)容331
14.3.5 實(shí)例:打印文件中的行333
14.3.6 實(shí)例:打印文件中的行號(hào)336
14.3.7 實(shí)例:從文件中讀取和向文件中寫入336
14.4 sed與Shell340
14.4.1 實(shí)例:在sed中使用Shell變量340
14.4.2 實(shí)例:從sed輸出中設(shè)置Shell變量347
14.5 awk基礎(chǔ)348
14.5.1 awk簡介348
14.5.2 awk基本語法349
14.5.3 第一個(gè)awk命令350
14.5.4 使用awk打印指定的列351
14.5.5 從awk程序文件讀取awk指令351
14.5.6 awk的BEGIN和END塊352
14.5.7 awk中使用正則表達(dá)式352
14.5.8 awk的表達(dá)式和塊353
14.5.9 awk的條件語句354
14.5.10 awk中的變量和操作符354
14.5.11 awk中的特殊變量355
14.5.12 awk中的循環(huán)結(jié)構(gòu)356
14.5.13 awk中的數(shù)組358
14.6 awk與Shell359
14.6.1 實(shí)例:在awk中使用Shell變量359
14.6.2 實(shí)例:從awk命令的輸出中設(shè)置Shell變量360
14.7 awk命令實(shí)例362
14.7.1 實(shí)例:使用awk編寫字符統(tǒng)計(jì)工具362
14.7.2 實(shí)例:使用awk程序統(tǒng)計(jì)文件的總列數(shù)364
14.7.3 實(shí)例:使用awk自定義顯示文件的屬性信息365
14.7.4 實(shí)例:使用awk顯示ASCII字符366
14.7.5 實(shí)例:使用awk來獲取進(jìn)程號(hào)369
14.8 小結(jié)371
第15章 其他Linux Shell種類介紹374
15.1 C Shell374
15.1.1 csh簡介374
15.1.2 csh的特性375
15.1.3 csh的內(nèi)部變量376
15.1.4 csh的內(nèi)部命令376
15.1.5 tcsh在csh基礎(chǔ)上的新特性381
15.2 Korn Shell389
15.2.1 ksh簡介389
15.2.2 ksh的特性390
15.2.3 ksh的內(nèi)部變量395
15.2.4 ksh的內(nèi)部命令397
15.2.5 增強(qiáng)的ksh-ksh93404
15.3 小結(jié)408