shell指令碼進階編程,shell進階編程
0. shell指令碼所需要的基礎知識
- vi/vim編輯器命令,包括vimrc設定;
- Linux命令基礎
- 網路服務(nfs, rsync, inotify, lanmp, sersync, ssh key)批量分發管理
1. shell指令碼介紹
1.1 什麼是shell
1.2 什麼shell script
1.3 shell程式在營運工作的作用地位
1.4 指令碼語言的種類
1.4.1 shell script 語言的種類
1.4.2 其他常用script language
1.5 OS預設shell
1.6 shell script 指令碼的建立和執行
2. shell 變數由淺入深
2.1 變數類型
2.2 環境變數
2.3 自訂環境變數(全域變數)
2.4 顯示與取消環境變數
2.5 局部變數
2.5.1 定義本地變數
2.5.2 特殊變數
2.5.3 內部變數
2.5.4 變數子串操作
2.5.5 變數的數值計算
3. 條件測試
3.1 測試語句
3.1.1 條件測試文法
3.1.2 檔案測試操作符
3.1.3 字串測試操作符
3.1.4 整數二元比較操作符
3.1.5 邏輯操作符
3.2 條件測試舉例
3.2.1 檔案測試舉例
3.2.2 字串測試舉例
3.2.3 整數測試舉例
3.2.4 test命令測試的用法
3.2.5 邏輯操作符舉例
4. 分支與迴圈結構
4.1 if statement
4.1.1 if 條件句文法說明
4.1.2 if 條件句舉例
4.1.3 多判斷條件 if 語句(&&, ||)
4.2 case 機構條件句
4.2.1 case條件句文法
4.2.2 case結構條件句自寫範例
4.2.3 case結構條件句系統指令碼範例
4.2.4 系統標杆指令碼
4.3 當型迴圈和直到型迴圈
4.3.1 當型和直到型迴圈文法
4.3.2 當型和直到型迴圈基本範例
4.3.3 進階生產實戰範例拓展
4.4 for迴圈結構
4.4.1 for迴圈結構文法
4.4.2 for迴圈結構基礎例子
4.4.3 for迴圈結構深入例子
4.4.4 for迴圈結構進階例子
5. break continue exit
5.1 break continue exit 對比
5.2 break continue exit 範例
6. shell 函數
6.1 shell函數文法
6.2 shell函數執行
6.3 shell函數範例
7. shell script debug
7.1 常見指令碼錯誤範例
7.1.1 if條件句缺少if結尾關鍵字
7.1.2 迴圈結構體中缺少關鍵字錯誤
7.1.3 成對的符號落了單導致錯誤
7.1.4 中括弧[]兩端沒空格導致錯誤
7.2 shell指令碼調式技巧
7.2.1 使用dos2unix命令處理指令碼
7.2.2 使用echo命令調試
7.2.3 使用bash命令參數調試
7.2.4 使用set命令調試部分指令碼內容
8. shell script 開發習慣、規範、唯讀
8.1 命名規範
8.1.1 版本和運行參宿
8.1.2 變數命名
8.1.3 函數命名
8.1.4 指令碼(模組)命名
8.1.5 臨時檔案的命名
8.2 代碼風格規範
8.2.1 代碼架構
8.2.2 函數規範
8.2.3 條件陳述式與迴圈
8.3 注釋規範
8.3.1 檔案/模組注釋
8.3.2 重要函數注釋
8.3.3 寫注釋的好習慣
8.4 引用符號使用規範
8.5 日誌規範
8.6 介面檔案規格
8.7 配置規範
8.7.1 設定檔規範
8.7.2 配置項的檢查
8.8 指令碼存放規範
8.9 補充規範開發習慣
9. shell開發環境的配置調整和最佳化
9.1 設定SecureCRT終端vim shell 環境配置
9.2 vim shell環境功能
9.2.1 SecureCTR終端vim自動增加著作權功能資訊
9.2.2 vim編輯器中成對括弧自動補全功能
9.2.3 vim編輯器中函數等自動補全功能
9.2.4 vim編輯器中自動縮排、高亮顯示等
9.3 vim shell環境配置.vimrc實現代碼及參數
7.2 shell script debug技巧