Como dividir várias colunas em duas colunas com base na primeira coluna

3

Eu tenho um texto de coluna delimitado por tabulações, como abaixo

A    1   12  13
B    3   4   5 
C    6   17   8
D    19   10  11

como eu poderia converter a tabela acima, como abaixo

A    1
A    12
A    13
B    3
B    4
B    5
C    6
C    17
.
.
.
    
por desu 10.05.2017 / 13:00

1 resposta

4

com o awk:

$ awk '{for (i=2;i<=NF;i++) print $1,$i}' file
A 1
A 12
A 13
B 3
B 4
B 5
C 6
C 17
C 8
D 19
D 10
D 11

Para delimitar a guia de saída, você pode usar a variável OFS :

$ awk -v OFS='\t' '{for (i=2;i<=NF;i++) print $1,$i}' file
A   1
A   12
A   13
B   3
B   4
B   5
C   6
C   17
C   8
D   19
D   10
D   11
    
por 10.05.2017 / 13:03