《Linux典藏大系:Linux Shell命令行及腳本編程實(shí)例詳解》共15章,分為兩篇。主要內(nèi)容包括:Linux 及Linux Shell簡(jiǎn)介、初識(shí)Linux Shell、常用Shell (Bash)命令、Shell命令進(jìn)階、Shell編程基礎(chǔ)、 Shell的條件執(zhí)行、Bash循環(huán)、Shell函數(shù)、正則表達(dá) 式、腳本輸入處理、Shell重定向、管道和過(guò)濾器、 捕獲、sed和awk,以及其他Linux Shell種類(lèi)介紹。
Linux Shell命令行及腳本編程實(shí)例詳解目錄
第1篇 Linux Shell基礎(chǔ)和使用
第1章 Linux及Linux Shell簡(jiǎn)介
1.1 關(guān)于Linux
1.1.1 什么是Linux
1.1.2 誰(shuí)創(chuàng)建了Linux
1.1.3 Linux在日常生活中的使用
1.1.4 Linux Kernel是什么
1.1.5 Linux的理念
1.2 什么是Linux Shell
1.3 Shell的種類(lèi)
1.4 怎樣使用Shell
1.5 Shell腳本是什么
1.6 為什么使用Shell腳本
1.7 實(shí)例:創(chuàng)建你的第一個(gè)Shell腳本
1.8 小結(jié)
第2章 初識(shí)Linux Shell
2.1 Bash Shell
2.1.1 Bash簡(jiǎn)介
2.1.2 Bash提供的改進(jìn)
2.2 Shell在Linux環(huán)境中的角色
2.2.1 與登錄Shell相關(guān)的文件
2.2.2 Bash啟動(dòng)腳本
2.2.3 實(shí)例:定制自己的Bash登錄腳本
2.2.4 Bash退出腳本
2.2.5 實(shí)例:定制自己的Bash退出腳本
2.2.6 有效的登錄Shell的路徑
2.3 Shell中的變量
2.3.1 Shell中變量的類(lèi)型
2.3.2 實(shí)例:如何定義變量和給變量賦值
2.3.3 變量命名規(guī)則
2.3.4 實(shí)例:使用echo和printf打印變量的值
2.3.5 變量的引用
2.3.6 實(shí)例:export語(yǔ)句的使用
2.3.7 實(shí)例:如何刪除變量
2.3.8 實(shí)例:如何檢查變量是否存在
2.4 Shell環(huán)境進(jìn)階
2.4.1 實(shí)例:回調(diào)命令歷史
2.4.2 實(shí)例:Shell中的擴(kuò)展
2.4.3 實(shí)例:創(chuàng)建和使用別名
2.4.4 實(shí)例:修改Bash提示符
2.4.5 實(shí)例:設(shè)置Shell選項(xiàng)
2.5 小結(jié)
第3章 常用Shell(Bash)命令
3.1 查看文件和目錄
3.1.1 ls命令實(shí)例:列出文件名和目錄
3.1.2 cat命令實(shí)例:連接顯示文件內(nèi)容
3.1.3 less、more命令實(shí)例:分屏顯示文件
3.1.4 head命令實(shí)例:顯示文件頭部
3.1.5 tail命令實(shí)例:顯示文件尾部
3.1.6 file命令實(shí)例:查看文件類(lèi)型
3.1.7 wc命令實(shí)例:查看文件統(tǒng)計(jì)信息
3.1.8 find命令實(shí)例:查找文件或目錄
3.2 操作文件和目錄
3.2.1 touch命令實(shí)例:創(chuàng)建文件
3.2.2 mkdir命令實(shí)例:創(chuàng)建目錄
3.2.3 cp命令實(shí)例:復(fù)制文件或目錄
3.2.4 ln命令實(shí)例:鏈接文件或目錄
3.2.5 mv命令實(shí)例:重命名文件或目錄
3.2.6 rm命令實(shí)例:刪除文件或目錄
3.3 管理文件或目錄權(quán)限
3.3.1 ls -l:顯示文件和目錄權(quán)限
3.3.2 chmod命令實(shí)例:修改權(quán)限
3.3.3 chown、chgrp命令實(shí)例:修改文件所有者和用戶組
3.3.4 設(shè)置setuid和setgid權(quán)限位實(shí)例:設(shè)置用戶和組權(quán)限位
3.4 文本處理
3.4.1 sort命令實(shí)例:文本排序
3.4.2 uniq命令實(shí)例:文本去重
3.4.3 tr命令實(shí)例:替換或刪除字符
3.4.4 grep命令實(shí)例:查找字符串
3.4.5 diff命令實(shí)例:比較兩個(gè)文件
3.5 其他常用命令
3.5.1 hostname命令實(shí)例:查看主機(jī)名
3.5.2 w、who命令實(shí)例:列出系統(tǒng)登錄的用戶
3.5.3 uptime命令實(shí)例:查看系統(tǒng)運(yùn)行時(shí)間
3.5.4 uname命令實(shí)例:查看系統(tǒng)信息
3.5.5 date命令實(shí)例:顯示和設(shè)置系統(tǒng)日期和時(shí)間
3.5.6 id命令實(shí)例:顯示用戶屬性
3.6 小結(jié)
第4章 Shell命令進(jìn)階
4.1 文件處理和歸檔
4.1.1 paster命令實(shí)例:合并文件
4.1.2 dd命令實(shí)例:備份和拷貝文件
4.1.3 gzip、bzip2命令實(shí)例:壓縮和歸檔文件
4.1.4 gunzip、bunzip2命令實(shí)例:解壓縮文件
4.1.5 tar命令實(shí)例:打包和解包文件
4.2 監(jiān)測(cè)和管理磁盤(pán)
4.2.1 mount、umount命令實(shí)例:掛載和卸載存儲(chǔ)介質(zhì)
4.2.2 df命令實(shí)例:報(bào)告文件系統(tǒng)磁盤(pán)空間利用率
4.2.3 du命令實(shí)例:評(píng)估文件空間利用率
4.3 后臺(tái)執(zhí)行命令
4.3.1 cron、crontab命令實(shí)例:執(zhí)行計(jì)劃任務(wù)
4.3.2 at命令實(shí)例:在指定時(shí)間執(zhí)行命令
4.3.3 &控制操作符實(shí)例:將任務(wù)放在后臺(tái)運(yùn)行
4.3.4 nohup命令實(shí)例:運(yùn)行一個(gè)對(duì)掛起免疫的命令
4.4 小結(jié)
…第2篇 Shell 腳本編程
第5章 Shell編程基礎(chǔ)
5.1 Shell腳本的第一行“#!”(Shebang)
5.2 Shell中的注釋
5.3 實(shí)例:如何設(shè)置腳本的權(quán)限和執(zhí)行腳本
5.4 Shell變量進(jìn)階
5.4.1 Bash中的參數(shù)擴(kuò)展
5.4.2 Bash的內(nèi)部變量
5.4.3 Bash中的位置參數(shù)和特殊參數(shù)
5.4.4 實(shí)例:使用declare指定變量的類(lèi)型
5.4.5 Bash中的數(shù)組變量
5.5 Shell算術(shù)運(yùn)算
5.5.1 Bash的算術(shù)運(yùn)算符
5.5.2 數(shù)字常量
5.5.3 使用算術(shù)擴(kuò)展和let進(jìn)行算術(shù)運(yùn)算
5.5.4 實(shí)例:使用expr命令
5.6 退出腳本
5.6.1 退出狀態(tài)碼
5.6.2 實(shí)例:使用exit命令
5.7 實(shí)例:調(diào)試腳本
5.8 Shell腳本編程風(fēng)格
5.9 小結(jié)
第6章 Shell的條件執(zhí)行
6.1 條件測(cè)試
6.1.1 實(shí)例:使用test命令
6.1.2 if結(jié)構(gòu)的語(yǔ)法格式
6.1.3 實(shí)例:if…else…fi語(yǔ)句
6.1.4 實(shí)例:嵌套的if/else語(yǔ)句
6.1.5 實(shí)例:多級(jí)的if…elif…else…fi
6.2 條件執(zhí)行
6.2.1 實(shí)例:邏輯與“&&”
6.2.2 實(shí)例:邏輯或“||”
6.2.3 實(shí)例:邏輯非“!”
6.3 case語(yǔ)句實(shí)例
6.4 小結(jié)
第7章 Bash循環(huán)
7.1 for循環(huán)
7.1.1 for循環(huán)語(yǔ)法
7.1.2 實(shí)例:嵌套for循環(huán)語(yǔ)句
7.2 while循環(huán)
7.2.1 while循環(huán)語(yǔ)法
7.2.2 實(shí)例:定義無(wú)限while循環(huán)
7.3 until循環(huán)語(yǔ)句實(shí)例
7.4 select循環(huán)語(yǔ)句實(shí)例
7.5 循環(huán)控制
7.5.1 實(shí)例:break語(yǔ)句
7.5.2 實(shí)例:continue語(yǔ)句
7.6 小結(jié)
第8章 Shell函數(shù)
8.1 函數(shù)的定義
8.2 函數(shù)的參數(shù)、變量與返回值
8.2.1 實(shí)例:向函數(shù)傳遞參數(shù)
8.2.2 本地變量
8.2.3 實(shí)例:使用return命令
8.2.4 實(shí)例:函數(shù)返回值測(cè)試
8.3 函數(shù)的調(diào)用
8.3.1 實(shí)例:在Shell命令行調(diào)用函數(shù)
8.3.2 實(shí)例:在腳本中調(diào)用函數(shù)
8.3.3 實(shí)例:從函數(shù)文件中調(diào)用函數(shù)
8.3.4 實(shí)例:遞歸函數(shù)調(diào)用
8.4 實(shí)例:將函數(shù)放在后臺(tái)運(yùn)行
8.5 小結(jié)
第9章 正則表達(dá)式
9.1 什么是正則表達(dá)式
9.1.1 定義
9.1.2 正則表達(dá)式類(lèi)型
9.1.3 POSIX字符類(lèi)
9.1.4 Bash正則表達(dá)式比較操作符
9.2 正則應(yīng)用基礎(chǔ)
9.2.1 實(shí)例:使用句點(diǎn).匹配單字符
9.2.2 實(shí)例:使用插入符號(hào)^匹配
9.2.3 實(shí)例:使用美元符$匹配
9.2.4 實(shí)例:使用星號(hào)*匹配
9.2.5 實(shí)例:使用方括號(hào)[ ]匹配
9.2.6 實(shí)例:使用問(wèn)號(hào)?匹配
9.2.7 實(shí)例:使用加號(hào)+匹配
9.3 小結(jié)
第10章 腳本輸入處理
10.1 參數(shù)處理
10.1.1 實(shí)例:使用case語(yǔ)句處理命令行參數(shù)
10.1.2 實(shí)例:使用shift命令處理命令行參數(shù)
10.1.3 實(shí)例:使用for循環(huán)讀取多個(gè)參數(shù)
10.1.4 實(shí)例:讀取腳本名
10.1.5 實(shí)例:測(cè)試命令行參數(shù)
10.2 選項(xiàng)處理
10.2.1 實(shí)例:使用case語(yǔ)句處理命令行選項(xiàng)
10.2.2 實(shí)例:使用getopts處理多命令行選項(xiàng)
10.2.3 實(shí)例:使用getopt處理多命令行選項(xiàng)
10.3 獲得用戶輸入
10.3.1 實(shí)例:基本的讀取
10.3.2 實(shí)例:輸入超時(shí)
10.3.3 實(shí)例:隱藏方式讀取
10.3.4 實(shí)例:從文件中讀取
10.4 小結(jié)
第11章 Shell重定向
11.1 輸入和輸出
11.1.1 標(biāo)準(zhǔn)輸入
11.1.2 標(biāo)準(zhǔn)輸出
11.1.3 標(biāo)準(zhǔn)錯(cuò)誤
11.2 重定向
11.2.1 文件重定向
11.2.2 實(shí)例:從文件輸入
11.2.3 實(shí)例:從文本或字符串輸入
11.2.4 實(shí)例:空文件創(chuàng)建
11.2.5 實(shí)例:/dev/null丟棄不需要的輸出
11.2.6 實(shí)例:標(biāo)準(zhǔn)錯(cuò)誤重定向
11.2.7 實(shí)例:標(biāo)準(zhǔn)輸出重定向
11.2.8 實(shí)例:標(biāo)準(zhǔn)錯(cuò)誤和標(biāo)準(zhǔn)輸出同時(shí)重定向
11.2.9 實(shí)例:追加重定向輸出
11.2.10 實(shí)例:在單命令行進(jìn)行標(biāo)準(zhǔn)輸入輸出重定向
11.3 文件描述符
11.3.1 實(shí)例:使用exec命令
11.3.2 實(shí)例:指定用于輸入的文件描述符
11.3.3 實(shí)例:指定用于輸出的文件描述符
11.3.4 實(shí)例:關(guān)閉文件描述符
11.3.5 實(shí)例:打開(kāi)用于讀和寫(xiě)的文件描述符
11.3.6 實(shí)例:在同一腳本中使用exec進(jìn)行輸入和輸出重定向
11.4 小結(jié)
第12章 管道和過(guò)濾器
12.1 管道
12.1.1 操作符“|”和“>”之間的區(qū)別
12.1.2 為什么使用管道
12.1.3 實(shí)例:使用管道連接程序
12.1.4 實(shí)例:管道中的輸入重定向
12.1.5 實(shí)例:管道中的輸出重定向
12.2 過(guò)濾器
12.2.1 實(shí)例:在管道中使用awk命令
12.2.2 實(shí)例:在管道中使用cut命令
12.2.3 實(shí)例:在管道中使用grep命令
12.2.4 實(shí)例:在管道中使用tar命令
12.2.5 實(shí)例:在管道中使用head命令
12.2.6 實(shí)例:在管道中使用paste命令
12.2.7 實(shí)例:在管道中使用sed命令
12.2.8 實(shí)例:在管道中使用sort命令
12.2.9 實(shí)例:在管道中使用split命令
12.2.10 實(shí)例:在管道中使用strings命令
12.2.11 實(shí)例:在管道中使用tail命令
12.2.12 實(shí)例:在管道中使用tee命令
12.2.13 實(shí)例:在管道中使用tr命令
12.2.14 實(shí)例:在管道中使用uniq命令
12.2.15 實(shí)例:在管道中使用wc命令
12.3 小結(jié)
第13章 捕獲
13.1 信號(hào)
13.1.1 Linux中的信號(hào)
13.1.2 信號(hào)的名稱和值
13.1.3 Bash中的信號(hào)
13.2 進(jìn)程
13.2.1 什么是進(jìn)程
13.2.2 前臺(tái)進(jìn)程和后臺(tái)進(jìn)程
13.2.3 進(jìn)程的狀態(tài)
13.2.4 實(shí)例:怎樣查看進(jìn)程
13.2.5 實(shí)例:向進(jìn)程發(fā)送信號(hào)
13.2.6 關(guān)于子Shell
13.3 捕獲
13.3.1 trap語(yǔ)句
13.3.2 實(shí)例:使用trap語(yǔ)句捕獲信號(hào)
13.3.3 實(shí)例:移除捕獲
13.4 小結(jié)
第14章 sed和awk
14.1 sed編輯器基礎(chǔ)
14.1.1 sed簡(jiǎn)介
14.1.2 sed的模式空間
14.2 基本的sed編輯命令
14.2.1 追加、更改、插入編輯命令
14.2.2 刪除編輯命令
14.2.3 替換編輯命令
14.2.4 打印編輯命令
14.2.5 打印行號(hào)編輯命令
14.2.6 讀取下一行編輯命令
14.2.7 讀和寫(xiě)文件編輯命令
14.2.8 退出編輯命令
14.3 sed命令實(shí)例
14.3.1 實(shí)例:向文件中添加或插入行
14.3.2 實(shí)例:更改文件中指定的行
14.3.3 實(shí)例:刪除文件中的行
14.3.4 實(shí)例:替換文件中的內(nèi)容
14.3.5 實(shí)例:打印文件中的行
14.3.6 實(shí)例:打印文件中的行號(hào)
14.3.7 實(shí)例:從文件中讀取和向文件中寫(xiě)入
14.4 sed與Shell
14.4.1 實(shí)例:在sed中使用Shell變量
14.4.2 實(shí)例:從sed輸出中設(shè)置Shell變量
14.5 awk基礎(chǔ)
14.5.1 awk簡(jiǎn)介
14.5.2 awk基本語(yǔ)法
14.5.3 第一個(gè)awk命令
14.5.4 使用awk打印指定的列
14.5.5 從awk程序文件讀取awk指令
14.5.6 awk的BEGIN和END塊
14.5.7 awk中使用正則表達(dá)式
14.5.8 awk的表達(dá)式和塊
14.5.9 awk的條件語(yǔ)句
14.5.10 awk中的變量和操作符
14.5.11 awk中的特殊變量
14.5.12 awk中的循環(huán)結(jié)構(gòu)
14.5.13 awk中的數(shù)組
14.6 awk與Shell
14.6.1 實(shí)例:在awk中使用Shell變量
14.6.2 實(shí)例:從awk命令的輸出中設(shè)置Shell變量
14.7 awk命令實(shí)例
14.7.1 實(shí)例:使用awk編寫(xiě)字符統(tǒng)計(jì)工具
14.7.2 實(shí)例:使用awk程序統(tǒng)計(jì)文件的總列數(shù)
14.7.3 實(shí)例:使用awk自定義顯示文件的屬性信息
14.7.4 實(shí)例:使用awk顯示ASCII字符
14.7.5 實(shí)例:使用awk來(lái)獲取進(jìn)程號(hào)
14.8 小結(jié)
第15章 其他Linux Shell種類(lèi)介紹
15.1 C Shell
15.1.1 csh簡(jiǎn)介
15.1.2 csh的特性
15.1.3 csh的內(nèi)部變量
15.1.4 csh的內(nèi)部命令
15.1.5 tcsh在csh基礎(chǔ)上的新特性
15.2 Korn Shell
15.2.1 ksh簡(jiǎn)介
15.2.2 ksh的特性
15.2.3 ksh的內(nèi)部變量
15.2.4 ksh的內(nèi)部命令
15.2.5 增強(qiáng)的ksh-ksh93
15.3 小結(jié)
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版