您好,登錄后才能下訂單哦!
5.1 函數(shù)
格式:
func() { command }
示例1:
#!/bin/bash func() { echo "This is a function." } func # bash test.sh This is a function.
Shell函數(shù)很簡單,函數(shù)名后跟雙括號,再跟雙大括號。通過函數(shù)名直接調(diào)用,不加小括號。
示例2:函數(shù)返回值
#!/bin/bash func() { VAR=$((1+1)) return $VAR echo "This is a function." } func echo $? # bash test.sh 2
return在函數(shù)中是定義狀態(tài)返回值,返回并終止函數(shù),但返回的只能是數(shù)字,類似于exit 0。
示例3:函數(shù)傳參
#!/bin/bash func() { echo "Hello $1" } func world # bash test.sh Hello world
通過Shell位置參數(shù)給函數(shù)傳參。
博客地址:http://lizhenliang.blog.51cto.com
QQ群:Shell/Python運維開發(fā)群 323779636
5.2 數(shù)組
數(shù)組是相同類型的元素按一定順序排列的集合。
格式:
array=(元素1 元素2 元素3 ...)
用小括號初始化數(shù)組,元素之間用空格分隔。
定義方法1:初始化數(shù)組 array=(a b c) 定義方法2:新建數(shù)組并添加元素 array[下標(biāo)]=元素 定義方法3:將命令輸出作為數(shù)組元素 array=($(command))
數(shù)組操作:
獲取所有元素 # echo ${array[*]} # *和@ 都是代表所有元素 a b c 獲取數(shù)組長度 # echo ${#array[*]} 3 獲取第一個元素 # echo ${array[0]} a 獲取第二個元素 # echo ${array[1]} b 獲取第三個元素 # echo ${array[2]} c 添加元素 # array[3]=d # echo ${array[*]} a b c d 添加多個元素 # array+=(e f g) # echo ${array[*]} a b c d e f g 刪除a元素 # unset array[a] # 用名字刪除會保留元素下標(biāo) # echo ${array[*]} b c d e f g 刪除第一個元素 # unset array[1] # echo ${array[*]} c d e f g
數(shù)組下標(biāo)是以0開始。
示例1:講seq生成的數(shù)字序列循環(huán)放到數(shù)組里面
#!/bin/bash for i in $(seq 1 10); do array[a]=$i let a++ done echo ${array[*]} # bash test.sh 1 2 3 4 5 6 7 8 9 10 刪除數(shù)組 # unset array
示例2:遍歷數(shù)組元素
#!/bin/bash IP=(192.168.1.1 192.168.1.2 192.168.1.3) for ((i=0;i<${#IP[*]};i++)); do echo ${IP[$i]} done # bash test.sh 192.168.1.1 192.168.1.2 192.168.1.3
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。