shell編程中,常常須要將由特定分割符分割的字符串分割成數組,多數狀況下咱們首先會想到使用awk
可是實際上用shell自帶的分割數組功能會更方便。假如
shell
a="one,two,three,four"
要將$a分割開,能夠這樣: 編程
OLD_IFS="$IFS" IFS="," arr=($a) IFS="$OLD_IFS" for s in ${arr[@]} do echo "$s" done
上述代碼會輸出
數組
one two three four
arr=($a)用於將字符串$a分割到數組$arr ${arr[0]} ${arr[1]} ... 分別存儲分割後的數組第1 2 ... 項 ,${arr[@]}存儲整個數組。變量$IFS存儲着分隔符,這裏咱們將其設爲逗號 "," OLD_IFS用於備份默認的分隔符,使用完後將之恢復默認。spa