gawk 'BEGIN{FS="|"}{n=split($2,a," "); for (i = 1; i <=n ; i++) printf "%s%s|%s|%s\n", $1,a[i],$3,$4;}'
aqui meus dados: Exemplos:
454|12 13 |Peoples Telephone (China Mobile Hong Kong)|0.0118
454|06 15 17 |SmarTone Mobile Comms (P Plus)|0.0412
im bastante unix / linux. Posso saber se há algum comando para que eu possa preencher os dados conforme abaixo:
45412 |Peoples Telephone (China Mobile Hong Kong)|0.0118
45413 |Peoples Telephone (China Mobile Hong Kong)|0.0118
45406 |SmarTone Mobile Comms (P Plus)|0.0412
45415 |SmarTone Mobile Comms (P Plus)|0.0412
45417 |SmarTone Mobile Comms (P Plus)|0.0412
Estou usando o comando gawk para imprimir a primeira parte
( gawk 'BEGIN{FS="|"}{print $1}'
mas não conseguiu combinar com cada quebra. Precisa da sua ajuda.
Tags shell-script