400-888-5228

課程介紹:

本課程旨在介紹如何充分挖掘unix/linux程序和命令的功能。通過shell的內(nèi)置功能可以編寫非常復(fù)雜的應(yīng)用程序,可以說幾乎所有的應(yīng)用程序都可 以用shell腳本來編寫,腳本是一種最容易獲得的系統(tǒng)工具,無須額外的編譯器和開發(fā)環(huán)境,只要有unix/linux主機(jī),就自然可以用到腳本。深入了 解shell的內(nèi)置功能可以大大降低unix/linux管理員和程序員的勞動強(qiáng)度,提高主機(jī)資源管理的效率

 

課程長度:

3天

 

 

課程對象:

本課程適用于Linux、Unix管理人員學(xué)習(xí),學(xué)員需具備unix/linux系統(tǒng)使用經(jīng)驗(yàn)。

 

課程大綱:

第一部分.shell 編程 簡介

  1. 為什么使用shell編程?
  2. 帶著一個Sha-Bang出發(fā)(Sha-Bang指的是#!)

2.1. 調(diào)用一個腳本

2.2. 初步的練習(xí)

第二部分. 基本

  1. 特殊字符
  2. 變量和參數(shù)的介紹

4.1. 變量替換

4.2. 變量賦值

4.3. Bash變量是不區(qū)分類型的

4.4. 特殊的變量類型

  1. 引用

5.1. 引用變量

5.2. 轉(zhuǎn)義

  1. 退出和退出狀態(tài)碼
  2. 條件判斷

7.1. 條件測試結(jié)構(gòu)

7.2. 文件測試操作符

7.3. 其他比較操作符

7.4. 嵌套的if/then條件測試

7.5. 檢測你對測試知識的掌握情況

  1. 操作符與相關(guān)主題

8.1. 操作符

8.2. 數(shù)字常量

第三部分. 進(jìn)階

  1. 變量重游

9.1. 內(nèi)部變量

9.2. 操作字符串

9.3. 參數(shù)替換

9.4. 指定變量的類型: 使用declare或者typeset

9.5. 變量的間接引用

9.6. $RANDOM: 產(chǎn)生隨機(jī)整數(shù)

9.7. 雙圓括號結(jié)構(gòu)

  1. 循環(huán)與分支

10.1. 循環(huán)

10.2. 嵌套循環(huán)

10.3. 循環(huán)控制

10.4. 測試與分支(case與select結(jié)構(gòu))

  1. 內(nèi)部命令與內(nèi)建命令

11.1. 作業(yè)控制命令

  1. 外部過濾器, 程序和命令

12.1. 基本命令

12.2. 復(fù)雜命令

12.3. 時間/日期 命令

12.4. 文本處理命令

12.5. 文件與歸檔命令

12.6. 通訊命令

12.7. 終端控制命令

12.8. 數(shù)學(xué)計(jì)算命令

12.9. 混雜命令

  1. 系統(tǒng)與管理命令

13.1. 分析一個系統(tǒng)腳本

  1. 命令替換
  2. 算術(shù)擴(kuò)展
  3. I/O重定向

16.1. 使用exec

16.2. 代碼塊重定向

16.3. 重定向的應(yīng)用

  1. Here Document

17.1. Here String

  1. 休息片刻

第四部分. 高級主題

  1. 正則表達(dá)式

19.1. 一份簡要的正則表達(dá)式介紹

19.2. 通配(globbing)

  1. 子shell
  2. 受限shell
  3. 進(jìn)程替換
  4. 函數(shù)

23.1. 復(fù)雜函數(shù)和函數(shù)復(fù)雜性

23.2. 局部變量

23.3. 不使用局部變量的遞歸

  1. 別名
  2. 列表結(jié)構(gòu)
  3. 數(shù)組
  4. /dev和/proc

27.1. /dev

27.2. /proc

  1. Zero與Null
  2. 調(diào)試
  3. 選項(xiàng)
  4. 陷阱
  5. 腳本編程風(fēng)格

32.1. 非官方的Shell腳本編寫風(fēng)格

  1. 雜項(xiàng)

33.1. 交互與非交互式的交互與非交互式的shell和腳本

33.2. Shell包裝

33.3. 測試和比較: 一種可選的方法

33.4. 遞歸

33.5. 將腳本"彩色化"

33.6. 優(yōu)化

33.7. 各種小技巧

33.8. 安全問題

33.9. 可移植性問題

33.10. Windows下的shell腳本