У меня есть число с плавающей точкой, хранящееся в переменной $temp, например 3.046789. Как мы можем округлить это число с точностью до 2 цифр, и результат, который мне нужен, будет 3.05. Скрипт, который у меня есть, — это скрипт csh.
решение1
Вы можете использовать командуprintf
для форматирования чисел множеством способов, как с помощью функции C printf()
:
Чтобы сделать его независимым от используемой оболочки, запустите/usr/bin/printf
$ LC_ALL=C /usr/bin/printf '%.2f\n' 3.046789
3.05
Синтаксис формата описан на странице руководства библиотечной функции:man 3 printf
.
Не уверен насчет обработки переменных в csh
.
Кроме того, printf
может быть доступна как встроенная команда оболочки, которая делает то же самое, что и в bash.