shell中數組的使用

#!/bin/sh

#數組的創建

array=(jim lilei richard mack mike)

arrayB=("happy lee"  "pig wang"  "peter zn"  "jack zhang"  "jim wei")

#元素個數的獲取

echo ${#array[@]}

echo ${#array[*]}

len=${#array[@]}

lenB=${#arrayB[*]}

#數組元素的遍歷方式

echo "-----------------------"

i=0

while [ $i -lt $len ]

do

echo ${array[$i]}

let i++

done

echo "-----------------------"

arrayB[0]='jim wei hello' #數組元素的重新賦值

i=0

while [ $i -lt $lenB ]

do

echo ${arrayB[$i]}

let i++

done

echo "-----------------------"#注意這種方式下,輸出結果的不同

for name in "${arrayB[*]}"#

do

echo $name

done

echo "-----------------------"

str="jim lilei mike"

for name in $str#此種方式可根據空格(環境分隔符$IFS的值)來分隔字符串達到單詞分割得目的

do

echo $name

done

exit 0

下面是輸出結果:

 

 

注意以for name in 的方式分隔字符串或數組都是按照默認輸入分隔符來進行分隔的,所以上圖就在用這種方式分隔單個元素中含有

空格的數組元素時就出現了問題!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章