Compare duas colunas e insira o valor na próxima coluna

1

Eu tenho um arquivo que contém dados em forma de coluna. Por favor me ajude a obter a saída desejada. Eu tentei usar o awk, mas não consegui inserir o valor.

- A  B  C   D   E
- 6 15  78  4   
- 4 14  77  4   23
- 5 13  79  2   45
- 5 16  81  4   
- 5 16  81  4   65

Eu preciso verificar se a coluna E está em branco, então, se a coluna A = 6, insira 240 na coluna E e A = 5, insira 120 e A = 4 e insira 0 no espaço em branco.

Resultado esperado:

- A B   C   D   E
- 6 15 78   4   240
- 4 14 77   4   0
- 5 13 79   2   120
- 5 16 81   4   120
- 5 16 81   4   120
    
por Akki 08.06.2017 / 13:12

1 resposta

2

De acordo com sua saída esperada, o vazio do campo E não faz muita influência.
Basta verificar o valor do campo A com o seguinte:

awk '{ if($2==6) $6=240; else if($2==5) $6=120; else if($2==4) $6=0 }1' file | column -t

A saída:

-  A  B   C   D  E
-  6  15  78  4  240
-  4  14  77  4  0
-  5  13  79  2  120
-  5  16  81  4  120
-  5  16  81  4  120
    
por 08.06.2017 / 14:17