echo "scale=3;1/8" | bc
показывает .125на экране. Как показать, 0.125если выходной результат меньше единицы?
echo "scale=3;1/8" | bc
показывает .125на экране. Как показать, 0.125если выходной результат меньше единицы?
Ответы:
Вы можете трубку в awk
echo "scale=3;1/8" | bc | awk '{printf "%.3f\n", $0}'
или вы можете просто использовать awk для всего этого
awk '{printf "%.3f\n", 1/8}' <<< ""
0.125
<<< ""?
here string. Таким образом, в основном притворяется, что в конце есть пустой файл, иначе awk будет читать из stdin.Дополнительная информация здесь
BEGINблока избавит вас от этой проблемы, и это портативно.