課程大綱:
一、shell簡介及基礎
1、shell發展史及分類
2、bash功能簡介
3、布署設置bash環境
4、shell腳本組成、運行模式及執行方法
5、bash排錯方法
6、父shell和子shell
7、常用快捷鍵
二、變量
1、變量分類
2、內部變量
3、預定義變量
4、自定義變量及基本用法
5、數組特殊字符
6、別名
7、Here Document
8、打印特殊字符
三、循環結構與流程控制
1、if條件判斷
2、case條件判斷
3、for循環
4、while循環
5、until循環
6、select命令
7、break和continue
四、函數
1、函數用法
2、函數作用范圍
3、參數使用
4、建立函數庫
5、遞歸函數
五、算術運算
1、算術式簡介
2、算術擴展
3、利用expr做算術運算
4、使用$[]做算術運算
5、使用內置變量declare、let做算術運算
6、利用bc做浮點運算
7、進制轉換
六、重定向與轉向
1、文件代碼
2、操作文件
3、輸入輸出轉向
4、轉向附加
5、標準錯誤伴隨輸出轉向
6、Here Document轉向
七、高級變量與字符串操作
1、變量擴展:測試存在性及空值
2、變量擴展:取字符串切片,字符串長度
3、變量擴展:對比樣式
4、變量擴展:取變量名稱列表,數組索引列表
5、命令替換
八、正則表達式
1、入門介紹
2、元字符
3、字條轉義
4、重復
5、字符類
6、分支條件
7、反義
8、分組
9、后向引用
10、零寬斷言與負向零寬斷言
11、貪婪與懶惰
12、注釋
13、處理選項
14、平衡組/遞歸匹配
九、sed編輯器
1、sed介紹
2、sed基本語法
3、sed調用方式
4、sed高級用法
十、awk學習
1、awk原理介紹
2、awk基本語法
3、awk調用方式
4、awk循環語句
5、awk函數
6、awk數組
7、awk的BEGIN和END模式
8、awk數學運算和字符串操作
9、awk重定向輸出
10、awk與bash之間傳參調用
11、awk調試方法
十一、文字與圖形接口編程
1、dialog文本接口編程
2、xdialog圖形接口編程
十二、bash網絡編程
1、bash網絡轉向
2、遠程執行命令
3、expect與自動登錄
十三、trap陷阱觸發
1、信號signal
2、trap運用
十四、shell腳本加密與包裝
1、加密shell腳本
2、生成二進制可執行文件
十五、shell中常用命令介紹
1、grep命令詳解
2、find與xargs
3、sort和uniq命令詳解
4、cut命令詳解
5、curl與wget命令詳解
6、cat、tac與rev
7、tr命令詳解
8、paste命令詳解
9、join命令詳解
課程周期:
3天(6小時/天)

