awk
usa sua variável OFMT
como o formato printf
padrão para a saída de números. Isso é %.6g
por padrão.
Você pode configurá-lo para algo como %f
ou para um formato mais preciso apropriado para seus dados, ou pode usar printf()
em vez de print
para formatar a saída explicitamente.
Exemplo:
$ awk 'BEGIN { print 100000000.10, 2, "hello" }'
1e+08 2 hello
$ awk -vOFMT='%f' 'BEGIN { print 100000000.10, 2, "hello" }'
100000000.100000 2 hello
$ awk -vOFMT='%.2f' 'BEGIN { print 100000000.10, 2, "hello" }'
100000000.10 2 hello
$ awk 'BEGIN { printf("%.2f %d %s\n", 100000000.10, 2, "hello") }'
100000000.10 2 hello