0
é avaliado como false
e pela condição $4 ? $4 : "-"
se trata de "-"
.
Para verificar o quarto campo vazio, a condição $4 != ""
deve ser especificada.
awk -F':' '{ print NR, ($4 != ""? $4 : "-") }' file
Exemplo de entrada:
1:2:3:0:5
1:2:3::5
Processamento Awk:
$ echo -e "1:2:3:0:5\n1:2:3::5"|awk -F: '{if($4!="") print NR,$4; else print NR,"-"}'
1 0
2 -
Pergunta: pode ser executado acima em uma breve se notação? Eu tentei algo assim, mas não retorna a saída como acima.
$ echo -e "1:2:3:0:5\n1:2:3::5"|awk -F: '{print NR,($4 ? $4 : "-")}'
1 -
2 -
0
é avaliado como false
e pela condição $4 ? $4 : "-"
se trata de "-"
.
Para verificar o quarto campo vazio, a condição $4 != ""
deve ser especificada.
awk -F':' '{ print NR, ($4 != ""? $4 : "-") }' file