數組中能夠存放多個值。Bash Shell 只支持一維數組(不支持多維數組)。linux
Shell 數組用括號來表示,元素用"空格"符號分割開,語法格式以下:shell
array_name=(value1 ... valuen)
2.數組經常使用操做
1)定義一個數組: myarray=(1 2 3 4 5);
2)讀取數組的某一個元素 : 數組
echo${myarray[下標值]}
# 注意數組名稱必須使用{} 括起來, 下標值從0開始編號;
3)數組元素的賦值:bash
myarray[下標值] xxx ;=
4)顯示數組的全部元素:函數
echo${myarray[*]};
5)得到數組的長度(元素的個數):spa
echo${#array[@]}
echo${#array[*]} 或者 ;
6)刪除一個數組元素:code
unset數組的遍歷: myarray[下標值]
#!/bin/bash my_arry=(a b "c","d" abc) echo "-------FOR循環遍歷輸出數組--------" for i in ${my_arry[@]}; do echo $i done
1.常規方法輸出數組的全部元素,並進行獨立的處理。
用 ${myarray[*]} 直接輸出的全部元素的個數,對數組元素進行獨立操做的時候,不太方便,因此有必要。server
2.有時候不知道數組中元素的個數,所以數組的長度事先是不知道的,所以此時,須要動態的擴展數組長度與空間。
# 執行方法:腳本名server1 server2 server3 server...
# 得到全部參數存入數組
list=($*)
${#list[@]}
len=
shell和函數的定義blog
1.linux shell 函數
將一組命令集或語句造成一個可用的塊, 這些語句塊稱爲函數。io
2.shell 函數的組成
函數名:函數名字,注意一個腳本中函數名要惟一,不然會引發調用函數紊亂。
函數體: 函數內部命令的集合,實現一個業務的功能。
3.shell 函數定義的格式
function 函數名()
# function能夠省略,注意()內部不帶任何參數。
{
命令1
命令2
. . .
}
四要素:
1.函數定義及引用實例一: 最簡單的定義及引用
#function能夠去掉,注意括號裏不能有參數function print_welcome()
{
echo"演練函數的定義及引用方法:"
echo"welcome,now time is `date`"
}
#函數的名字,調用print_welcome
2.函數定義及引用實例二:向函數傳遞參數演練
向函數傳遞參數就像在通常腳本中使用特殊變量1, 2 … $ 9同樣,函數取得所傳參數後,最好先在函數內從新設置變量保存所傳的參數。
程序功能:向函數傳遞一個變量值,對該變量值進行相關的運算,並輸出結果。
sumfunction()
{
$1 a1=
$2 a2=
echo"演練函數內參數的傳遞的方法"
if$#-eq2#若是參數的個數等於2 []
then
echo"符合函數要求的參數個數"
let sum=a1+a2
else
echo"函數要求的參數個數不符,請從新輸入..."
fi
echo"$a1+$a2=$sum"
}
1090#函數名和兩個參數,調用sum
3.函數文件和腳本文件不在同一個文件中
#注意格式:點 空格 函數文件地址. ./func_3.sh