我有一个这样的数据:
var1=col1,col2,col3,col4
我想像那样切割领域col1
,并且col3
应该聚集在一起,col2
并且col4
应该聚集在一起。
这样我的输出变量应该包含这样的值。
var2=col1,col3
var3=col2,col4
寻求一些帮助。
答案1
使用 POSIX shell:
var1=col1,col2,col3,col4
IFS=,
set -f
set -- $var1
unset var2 var3
while [ "$#" -ge 2 ]; do
var2=$var2${var2+,}$1
var3=$var3${var3+,}$2
shift 2
done
和zsh
:
unset var2 var3
for a b ("${(@s:,:)var1}") var2+=${var2+,}$a var3+=${var3+,}$b