LinuxShell自動化運維教學設計-Shell數組教學設計_第1頁
LinuxShell自動化運維教學設計-Shell數組教學設計_第2頁
LinuxShell自動化運維教學設計-Shell數組教學設計_第3頁
LinuxShell自動化運維教學設計-Shell數組教學設計_第4頁
LinuxShell自動化運維教學設計-Shell數組教學設計_第5頁
已閱讀5頁,還剩1頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

LinuxShell自動化運維

初中九年級教學教嗓教學設計

課程名稱:LinuxShellV動化運維____________

授課年級:____________________________________

授課學期:____________________________________

教師姓名:____________________________________

20xx年03月01口

計劃

課程名稱第4章Shell數組4學時

學時

本章主要介紹Shell數組地基本概念,Shell數組地類型.Shell數組地定義,Shell

內容分析

數組地遍歷及賦值,Shell數組地腳本實現

教學目地

要求學生熟悉數組地基本概念,熟悉數組地定義用法,了解數組地賦值用法,熟

悉數組編寫腳本程序

教學要求

教學重點Shell數組地類型,Shell數組地遍歷及賦值,Shell數組地腳本實現

教學難點Shell數組地類型,Shell數組地遍歷及賦值,Shell數組地腳本實現

教學方式課堂講解及ppt演示

第一課時

(Shell數組地基本概念,Shell數組地類型,Shell數組地定義)

回顧內容,引出本課時主題

1.回顧內容,引出本課時主題。

上面兩節學習了Shell循環地有關內容,本節開始Shell數組地有關內容

講解,數組是一種數據結構,是相同數據類型地元素按一定順序排列地元素集

合。數組實際上就是?連串類型相同地變量,這些變量用數組名命名,并用索

引互相區分。使用數組時,可以通過索引來訪問數組元素,如數組元素地賦值

與取值。本節著重講解Shell數組地基本概念,Shell數組地類型與Shell數組

學地定義,從而引出本節地內容。

2.明確學習目地

(1)能夠熟悉Shell數組地基本概念

(2)能夠熟悉普通數組與關聯數組

程(3)能夠理解定義數組地類型

(4)能夠理解直接定義數組

(5)能夠熟悉下標定義數組

(6)能夠熟悉間接定義數組

(7)能夠熟悉從文件中讀入定義數組

知識講解

>Shell數組地基本概念

數組中有限個相同類型地變量用一個名字命名,然后用編號區分它們。

用于區分不同元素地編號稱為數組下標,數組地元素有時也稱為下標變量。

>Shell數組地類型

數組分為普通數組與關聯數組。普通數組中地索引(下標)都是整數,美聯

數組地數組索引可以用任意地文本。關聯數組使用之前需要聲明,關聯數組

與普通數組最大地區別是,它是由特定格式地鍵值對組成地。接下來針對這兩

種數組類型分別進行講解。

>普通數組

普通數組中:數組元素地索引(下標)從0開始編號,獲取數組中地元素要

利用索引(下標)。索引(下標)可以是算術表達式,其結果需要是一個整數。

>關聯數組

關聯數組與普通數組所不同地是,它地索引下標可以是任意地整數與字

符串。

>定義數組地類型

在LinuxShell中,數組分為普通數組與關聯數組。用戶定義地是普通數

組,如需使莊關聯數組需要先聲明再使用。用戶聲明關聯數組使用-A參數。

通常情況下Shell解釋器隱式聲明普通數組,用戶無須操作。若用戶需顯式聲

明普通數組,需要使用-a參數。

聲明普通數組地方法為:

#declare-aarray

聲明關聯數組地方法為:

北declare-Aarray

>直接定義數組

直接定義數組是用小括號將變量值括起來賦值給數組變量,每個變量值

之間要用空隔進行分隔。直接定義數組格式為:

array_name=(valuelvalue2value3......)

數組名=(變量值1變量值2變量值3..........)

這種方法是最常用地方法,需要重點熟悉。

>下標定義數組

帶有下標定義數組是用小括號將變量值括起來,同時采用鍵值對地形式

賦值。

下標定義數組格式為:

array_name=([1]=valuel(2]=value2[3]=value3......)

知識講解

>常見地訪問Shell數組表達式

下表列出了常見訪問數組地表達式。

語法描述

echo${!array[*]}訪問數組所有索引

echo${!arrayl@]}訪問數組所有索引

echo${array[*J}訪問數組所有值

echo${array[@]}訪問數組所有值

echo${#array[@])統計數組元素個數

echo${array[0]}訪問數組中地第一個元素

echo${array[@]:l}從數組下標1開始

echo${array[@]:l:2)從數組下標1開始,訪問兩個元素

echo${#array[#]}第#個元素地字符個教

echo${#array}第。個元素地字符個教

echo$[array[#])顯學第廿個元素

echo${array}顯示第。個與元素

>while循環實現Shell數組地遍歷

以host文件地每一行作為數組地一個元素來做賦值,并對該數組進行遍

歷,具體參見例4-7。

while讀入/etc/hosts文件中地每一行并把它顯示出來,hosts[++i]=$line這

個表達式完成數組地賦值操作國!hos⑶@]}這個表達式獲得數組地索

引,${hosts[i]}這個表達式完成了數組地遍歷。

>for循環實現Shell數組地遍歷

當一個腳本需要傳入地參數較多時,可以使用for循環進行參數遍歷。參

見例4-8。

定義一個數組hosts以/etc/hosts每一行內容作為數組地元素進行遍歷。

>Shell數組地賦值

通過”數組名[下標『'對數組進行引用賦值,如果下標不存在,則自動添加

一個新地數組元素,如果下標存在,則覆蓋原來地值。

Shell數組地賦值語法格式為:

$arry_name[indexl]=valuel

$array_name[index2]=value2

數組名[下標]=變量值

>Shell數組地刪除

通過“unset數組[下標「刪除相應數組元素,如果不帶下標,則表示刪除整

個數組地所有元素。具體舉例參見例4-10。

>Shell數組地截取與替換

通過${數組名[@或*]:起始位置:長度)切片原先數組,返回地是字符串,中

間用空格分開,如果加上“0",將得到切片數也具體舉例參見例4-11。

替換地語法格式為:

${數組名[@或*"查找字符/替換字符}

>array數組實現性別統計

通過數組索引遍歷元素,把要統計地對象作為數組地索引。使用循環結合

數組統計性別出現地次數,具體參見例4-13。

>array數組統計不同類型Shell地數量

對于/etc/passwd文件不同Shell類型用行統計,具體參見例4-14。

>array數組統計TCP連接狀態數量

對于訪問某個網站產生地TCP地狀態地一個統計,具體如下所示:

[root@tianyunscripts]#ss-anIgrep:80

tcpLISTEN0128:::80:::*

tcpESTAB00:18.40.100:80

array數組統計TCP連接狀態數量參見例4-15。

第三課時

上機練習(總結,練習題)

1.總結本章內容。

2.通過題庫發送有關測試題,檢查學生熟悉情況。

上機練習主要針對本章中需要重點熟悉地知識點,以及在程序中容易出

錯地內容進行練習,通過上機練習可以考察同學對知識點地熟悉情況,對代碼

地熟練程度。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論