Transpor 6 colunas com outras colunas idênticas

0

Eu tenho o arquivo assim ...

a|b|c|d|e|1|2|3|4|5|f|g|h

Eu preciso do resultado como abaixo

a|b|c|d|e|1|f|g|h  
a|b|c|d|e|2|f|g|h  
a|b|c|d|e|3|f|g|h  
a|b|c|d|e|4|f|g|h  
a|b|c|d|e|5|f|g|h  
Basicamente eu estou tentando transpor 5 colunas, com o resto das colunas repetidas para cada um desses 5 atributos ... (aqui os valores 1,2,3,4,5 ... em uma única linha estão sendo transpostos para em 5 linhas separadas ... em todas as 5 linhas, a, b, c, d, e, f, g, h são duplicados.

Por favor, ajude a usar o AWK / SED / CUT.

    
por Ramesh Lakshman 27.06.2017 / 17:54

1 resposta

0

Solução

awk :

awk -F'|' '{ for(i=6;i<=10;i++) print $1,$2,$3,$4,$5,$i,$11,$12,$13 }' OFS='|' file

A saída:

a|b|c|d|e|1|f|g|h
a|b|c|d|e|2|f|g|h
a|b|c|d|e|3|f|g|h
a|b|c|d|e|4|f|g|h
a|b|c|d|e|5|f|g|h
  • for(i=6;i<=10;i++) - iterando pelos campos cruciais
por 28.06.2017 / 18:59