Você poderia fazer isso com sed
, ou talvez algumas versões de grep
, no entanto, usando awk
você pode expressar com muita elegância o que deseja realizar:
#!/bin/sh
awk -F, '
BEGIN {
OFS=","
}
{
for (i=2; i<=NF; i++) {
print $1, $i
}
}
' <<EOF
A, 1, 2, 3
B, 1, 2, 3
C, 1, 2, 3
EOF
Se você quiser que o script tenha nomes de arquivo ou entrada padrão, substitua o "aqui documento" (tudo do <<
ao final do arquivo) por:
"$@"