我不认为有一种方法可以使此命令忽略引号内的逗号(在“三个”之间)?
$ echo 'one,two,"three,three",four' | { IFS=',' read -a array; echo ${#array[@]}; }
5
Nb。echo ${#array[@]}
报告数组长度。
FPAT
在gnu-awk中使用可以做到:
str='one,two,"three,three",four'
awk -v FPAT='"[^"]*"|[^,]*' '{
print "# of columns: " NF; for(i=1; i<=NF; i++) print "Field #", i, ":", $i
}' <<< "$str"
输出:
# of columns: 4
Field # 1 : one
Field # 2 : two
Field # 3 : "three,three"
Field # 4 : four
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句