problem with if else declaração no awk

0

Eu tenho um arquivo como este:

Archaea     2   domain      
Archaea Aenigmarchaeota     11084   phylum      123

Estou tentando usar a instrução if else no awk. Eu quero pegar a última coluna de cada linha e depois checar:

if{(its is a number) print (column)} else (print the previous colum) 

Eu tentei isso:

awk '{if(NF=/[0-9]/){print $(NF-1)} else{print $(NF)}}' head.txt 

O que estou fazendo de errado?

    
por vic-3 16.09.2016 / 13:59

1 resposta

4

Você não precisa da lógica explícita do If / Else:

awk '$NF ~ /[0-9]/ {print $NF; next}; {print $(NF-1)}'
    
por 16.09.2016 / 14:13