如何将字符串拆分为数组?将字符串拆分为数组,其中长度不固定(不是bash)
#!/bin/sh
例如,
str="field 1,field 2,field 3,field 4"
数组的长度是不同的
已经找到了很多解决方案,但他们只在bash工作
更新
这只能如果数组的长度有4个值,但如果它有10个值呢?
for循环似乎不工作
arr=$(echo "field 1,field 2,field 3,field 4" | awk '{split($0,a,","); print a[1],a[2],a[3],a[4]}');
for value in ${arr[@]}
do
echo "$value\n"
done
由什么做分离器要分割字符串? ''''' –
普通的POSIX shell根本不支持数组。你需要使用一个shell('bash','zsh',可能是其他的)。 – chepner