我正在学习 AWK,并且正在尝试一些关于内置字符串函数的练习。
这是我的练习:
我有一个包含如下的文件
RecordType:83
1,2,3,a|x|y|z,4,5
我想要的输出如下:
RecordType:83
1,2,3,a,4,5
1,0,0,x,4,5
1,0,0,y,4,5
1,0,0,z,4,5
我为上面的输出写了一个 awk 命令。
awk -F',' '$1 ~ /RecordType:83/{print $0}
$1 == 1{
split($4,splt,"|")
for(i in splt)
{
if(i==1)
print $1,$2,$3,splt[i],$5,$6
else
print $1,0,0,splt[i],$5,$6
}
}' OFS=, file_name
上面的命令看起来很笨拙。有没有办法最小化命令?
提前致谢