shell 将字符串用逗号分割成数组

半兽人 发表于: 2019-01-21   最后更新时间: 2019-01-21  
a="one,two,three,four"

要将$a分割开,可以这样:

OLD_IFS="$IFS" 
IFS="," 
arr=($a) 
for s in ${arr[@]} 
do 
    echo "$s" 
done
IFS="$OLD_IFS"

结果:

one 
two 
three 
four

arr=($a)用于将字符串$a分割到数组$arr ${arr[0]} ${arr[1]} ...,分别存储分割后的数组第1 2 ...项,${arr[@]}存储整个数组。变量$IFS存储着分隔符,这里我们将其设为逗号",",·OLD_IFS·用于备份默认的分隔符,使用完后将之恢复默认。



您需要解锁本帖隐藏内容请: 点击这里
本帖隐藏的内容




上一条: shell命令行参数解析工具:getopts
下一条: 已经是最后了!