Isso não tem nada a ver com ls
e tudo tem a ver com a saída dos números de awk
.
A página man para awk
mostra que o formato de saída numérica padrão é .6g
, o que significa que um número de ponto flutuante de duplo comprimento será produzido com 6 dígitos de precisão, usando o formato expoente (que você vê) ou um decimal.
Você pode alterar isso para um formato de saída explícito como este
echo 123456789012345 | awk '{printf "Total: %.6g\n", $1}'
Total: 1.23457e+14
echo 123456789012345 | awk '{printf "Total: %.0f\n", $1}'
Total: 123456789012345