當(dāng)前位置: 首頁 > 原創(chuàng)圖書 >《Linux Shell編程從初學(xué)到精通》圖書介紹
· 多年嵌入式人才培養(yǎng)及項目研發(fā)經(jīng)驗總結(jié)
· 數(shù)百家企業(yè)嵌入式研發(fā)崗位人才需求匯總
· 數(shù)十所嵌入式專業(yè)大學(xué)院校教學(xué)現(xiàn)狀調(diào)研
· 側(cè)重實踐及案例分析并輔以代碼加以講解
《shell是用戶與內(nèi)核進(jìn)行交互操作的一種接口,是linux最重要的軟件之一。目前最流行的shell稱為bash shell,bash shell腳本編程以其簡潔、高效而著稱,多年來成為linux程序員和系統(tǒng)管理員解決實際問題的利器。
《linux shell編程從初學(xué)到精通》結(jié)合大量的示例,系統(tǒng)、全面地介紹了bash shell腳本編程的語法、命令、技巧、調(diào)試等內(nèi)容,在書中還有很多練習(xí)可以引導(dǎo)讀者思考,力求使讀者掌握linux bash shell編程的所有特性。本書結(jié)構(gòu)清晰、易教易學(xué)、實例豐富、可操作性強(qiáng)、學(xué)以致用,對易混淆和實用性強(qiáng)的內(nèi)容進(jìn)行了重點提示和講解,并配有光盤,光盤中提供書中出現(xiàn)的所有腳本文件、各章的講解ppt,以及各章的講解錄像。
《linux shell編程從初學(xué)到精通》面向廣大工程技術(shù)工作者,既可作為高等學(xué)校教師和相關(guān)專業(yè)學(xué)生的教材,又可作為各類培訓(xùn)班的培訓(xùn)教程。
《Linux Shell編程從初學(xué)到精通》章節(jié):
第1章 shell腳本編程概述
1.1 linux和shell概述
1.1.1 linux簡介
1.1.2 shell簡介
1.2 shell腳本編程的優(yōu)勢
1.3 第一個shell腳本例子
1.3.1 shell腳本的基本元素
1.3.2 執(zhí)行shell腳本
1.4 本章小結(jié)
第2章 linux文件系統(tǒng)和文本編輯器
2.1 用戶和用戶組管理
2.1.1 用戶管理常用命令
2.1.2 用戶組管理常用命令
2.2 文件和目錄操作
2.2.1 文件操作常用命令
2.2.2 目錄操作常用命令
2.2.3 文件和目錄權(quán)限管理
2.2.4 查找文件命令——find
2.3 文本編輯器
2.3.1 vi編輯器
2.3.2 gedit編輯器
2.4 本章小結(jié)
2.5 上機(jī)提議
第3章 正則表達(dá)式
3.1 正則表達(dá)式基礎(chǔ)
3.2 正則表達(dá)式的擴(kuò)展
3.3 通配
3.4 grep命令
3.4.1 grep命令基本用法
3.4.2 grep和正則表達(dá)式結(jié)合使用的一組例子
3.4.3 grep命令族簡介
3.5 本章小結(jié)
3.6 上機(jī)提議
第4章 sed命令和awk編程
4.1 sed命令基本用法
4.2 sed編程的一組例子
4.2.1 sed命令選項的一組例子
4.2.2 sed文本定位的一組例子
4.2.3 sed基本編輯命令的一組例子
4.2.4 sed高級編輯命令的一組例子
4.3 awk編程
4.3.1 awk編程模型
4.3.2 awk調(diào)用方法
4.4 awk編程的一組例子
4.4.1 awk模式匹配
4.4.2 記錄和域
4.4.3 關(guān)系和布爾運(yùn)算符
4.4.4 表達(dá)式
4.4.5 系統(tǒng)變量
4.4.6 格式化輸出
4.4.7 內(nèi)置字符串函數(shù)
4.4.8 向awk腳本傳遞參數(shù)
4.4.9 條件語句和循環(huán)語句
4.4.10 數(shù)組
4.5 本章小結(jié)
4.6 上機(jī)提議
第5章 文件的排序、合并和分割
5.1 sort命令
5.1.1 sort命令的基本用法
5.1.2 sort和awk的聯(lián)合用法
5.2 uniq命令
5.3 join命令
5.4 cut命令
5.5 paste命令
5.6 split命令
5.7 tr命令
5.8 tar命令
5.9 本章小結(jié)
5.10 上機(jī)提議
第6章 變量和引用
6.1 變量
6.1.1 變量替換和賦值
6.1.2 無類型的shell腳本
變量
6.1.3 環(huán)境變量
6.1.4 位置參數(shù)
6.2 引用
6.2.1 全引用和部分引用
6.2.2 命令替換
6.2.3 轉(zhuǎn)義
6.3 本章小結(jié)
6.4 上機(jī)提議
第7章 退出、測試、判斷及操作符
7.1 退出狀態(tài)
7.2 測試
7.2.1 測試結(jié)構(gòu)
7.2.2 整數(shù)比較運(yùn)算符
7.2.3 字符串運(yùn)算符
7.2.4 文件操作符
7.2.5 邏輯運(yùn)算符
7.3 判斷
7.3.1 簡單if結(jié)構(gòu)
7.3.2 exit命令
7.3.3 if/else結(jié)構(gòu)
7.3.4 if/else語句嵌套
7.3.5 if/elif/else結(jié)構(gòu)
7.3.6 case結(jié)構(gòu)
7.4 運(yùn)算符
7.4.1 算術(shù)運(yùn)算符
7.4.2 位運(yùn)算符
7.4.3 自增自減運(yùn)算符
7.4.4 數(shù)字常量
7.5 本章小結(jié)
7.6 上機(jī)提議
第8章 循環(huán)與結(jié)構(gòu)化命令
8.1 for循環(huán)
8.1.1 列表for循環(huán)
8.1.2 不帶列表for循環(huán)
8.1.3 類c風(fēng)格的for循環(huán)
8.2 while循環(huán)
8.2.1 計數(shù)器控制的while循環(huán)
8.2.2 結(jié)束標(biāo)記控制的while循環(huán)
8.2.3 標(biāo)志控制的while循環(huán)
8.2.4 命令行控制的while循環(huán)
8.3 until循環(huán)
8.4 嵌套循環(huán)
8.5 循環(huán)控制符
8.5.1 break循環(huán)控制符
8.5.2 continue循環(huán)控制符
8.6 select結(jié)構(gòu)
8.7 本章小結(jié)
8.8 上機(jī)提議
第9章 變量的高級用法
9.1 內(nèi)部變量
9.2 字符串處理
9.3 有類型變量
9.4 間接變量引用
9.5 bash數(shù)學(xué)運(yùn)算
9.5.1 expr命令
9.5.2 bc運(yùn)算器
9.6 本章小結(jié)
9.7 上機(jī)提議
第10章 i/o重定向
10.1 管道
10.1.1 管道簡介
10.1.2 cat和more命令
10.1.3 sed命令與管道
10.1.4 awk命令與管道
10.2 i/o重定向
10.2.1 文件標(biāo)識符
10.2.2 i/o重定向符號及其用法
10.2.3 exec命令的用法
10.2.4 代碼塊重定向
10.3 命令行處理
10.3.1 命令行處理流程
10.3.2 eval命令
10.4 本章小結(jié)
10.5 上機(jī)提議
第11章 linux/unix shell類型與區(qū)別
11.1 linux/unix shell起源與分類
11.2 dash簡介
11.3 tcsh簡介
11.4 korn shell簡介
11.5 本章小結(jié)
第12章 子shell與進(jìn)程處理
12.1 子shell
12.1.1 內(nèi)建命令
12.1.2 圓括號結(jié)構(gòu)
12.2 shell的限制模式
12.3 進(jìn)程處理
12.3.1 進(jìn)程和作業(yè)
12.3.2 作業(yè)控制
12.3.3 信號
12.3.4 trap命令
12.4 本章小結(jié)
12.5 上機(jī)提議
第13章 函數(shù)
13.1 函數(shù)的定義和基本知識
13.2 向函數(shù)傳遞參數(shù)
13.3 函數(shù)返回值
13.4 函數(shù)調(diào)用
13.4.1 腳本放置多個函數(shù)
13.4.2 函數(shù)相互調(diào)用
13.4.3 一個函數(shù)調(diào)用多個函數(shù)
13.5 局部變量和全局變量
13.6 函數(shù)遞歸
13.6.1 使用局部變量的遞歸
13.6.2 不使用局部變量的遞歸
13.7 本章小結(jié)
13.8 上機(jī)提議
第14章 別名、列表及數(shù)組
14.1 別名
14.2 列表
14.3 數(shù)組
14.3.1 數(shù)組的基本用法
14.3.2 數(shù)組的特殊用法
14.3.3 用數(shù)組實現(xiàn)簡單的數(shù)據(jù)結(jié)構(gòu)
14.4 本章小結(jié)
14.5 上機(jī)提議
第15章 一些混雜的主題
15.1 腳本編寫風(fēng)格
15.1.1 縮進(jìn)
15.1.2 {}的格式
15.1.3 空格和空行的用法
15.1.4 判斷和循環(huán)的編程風(fēng)格
15.1.5 命名規(guī)范
15.1.6 注釋風(fēng)格
15.2 腳本優(yōu)化
15.2.1 簡化腳本
15.2.2 保持腳本的靈活性
15.2.3 給用戶足夠的提示
15.3 linux中的特殊命令
15.3.1 shift命令
15.3.2 getopts命令
15.4 交互式和非交互式shell腳本
15.4.1 非交互式shell腳本
15.4.2 交互式shell腳本
15.5 /dev文件系統(tǒng)
15.5.1 /dev文件系統(tǒng)基礎(chǔ)知識
15.5.2 /dev/zero偽設(shè)備
15.5.3 /dev/null偽設(shè)備
15.6 /proc文件系統(tǒng)
15.6.1 使用/proc/sys優(yōu)化系統(tǒng)參數(shù)
15.6.2 查看運(yùn)行中的進(jìn)程信息
15.6.3 查看文件系統(tǒng)信息
15.6.4 查看網(wǎng)絡(luò)信息
15.7 shell包裝
15.8 帶顏色的腳本
15.9 linux腳本安全
15.9.1 使用shc工具加密shell腳本
15.9.2 linux shell腳本編寫的病毒
15.9.3 linux shell中的木馬
15.10 本章小結(jié)
15.11 上機(jī)提議
第16章 shell腳本調(diào)試技術(shù)
16.1 shell腳本調(diào)試概述
16.2 shell腳本調(diào)試技術(shù)
16.2.1 使用trap命令
16.2.2 使用tee命令
16.2.3 調(diào)試鉤子
16.2.4 使用shell選項
16.3 本章小結(jié)
16.4 上機(jī)提議
第17章 bash shell編程范例
17.1 將文本文件轉(zhuǎn)化為html文件
17.2 查找文本中n個出現(xiàn)頻率最高的單詞
17.3 偽隨機(jī)數(shù)的產(chǎn)生和應(yīng)用
17.4 crontab的設(shè)置和應(yīng)用
17.5 使用mysql數(shù)據(jù)庫
17.5.1 mysql基礎(chǔ)
17.5.2 shell腳本使用mysql
17.6 linux服務(wù)器性能監(jiān)控系統(tǒng)
17.6.1 ganglia簡介及安裝
17.6.2 提取服務(wù)器性能參數(shù)名稱及數(shù)據(jù)
17.6.3 動態(tài)更新服務(wù)器監(jiān)控數(shù)據(jù)
17.7 本章小結(jié)
17.8 上機(jī)提議
附錄
附錄a posix標(biāo)準(zhǔn)簡介
附錄b 常用ascii碼對照表
附錄c linux信號及其意義
附錄d bash內(nèi)建變量索引
附錄e bash內(nèi)建命令索引
參考文獻(xiàn)