O printf
do awk está tratando seu %
como o início de um quarto especificador de formato. Se você quiser imprimir um sinal% literal, você precisa de %%
, por exemplo
$ awk 'BEGIN{printf("%.1fG/%.1fG (%.f%%)\n", 1.2, 3.4, 5.6)}'
1.2G/3.4G (6%)