Bash — это хорошо известная оболочка и командный язык, используемый для эффективного выполнения задач. Во время работы в сценариях Bash и явной игры с плавающими числами часто бывает необходимо округлить плавающие числа. В этом посте мы изучим несколько команд и приемов сценариев Bash для округления числа до двух знаков после запятой.
При отображении чисел или переменных, содержащих числа с плавающей запятой, различные команды могут печатать текст или переменные, такие как echo, print и printf. Хотя мы можем отображать переменные и числа непосредственно из таких команд, тем не менее, единственная команда, которая имеет некоторые дополнительные функции и возможности, — это команда printf, которая касается нашей цели.
Команда printf
Команда printf аналогична функции printf () в языке C. Это позволяет нам форматировать и распечатывать аргументы.
Синтаксис
Синтаксис для написания команды printf в bash:
printf «string» arguments
В команде printf мы сначала должны указать строку в кавычках, а затем передать ей аргументы.
Пример
Давайте сначала напечатаем простой текст с помощью команды printf:
printf «Hello from bestprogrammer»
Вы можете видеть, что он только что распечатал строку, но имя пользователя и имя хоста идут сразу после строки.
Чтобы получить строку в одну строку, мы можем использовать символ новой строки ’\ n’, чтобы получить чистый и понятный вывод:
printf «Hello from bestprogrammer \n«
Теперь у нас есть чистый и понятный результат.
Теперь давайте посмотрим, как предоставить аргументы, чтобы дать этой команде printf число с плавающей запятой и округлить его.
Чтобы предоставить аргументы, нам нужно использовать спецификатор (% s) в строке, который будет заменен предоставленными аргументами. Например:
printf «User number: %s \n« 24
Хорошо, теперь вы поняли основное использование и функциональность команды printf. Давайте предоставим ему число с плавающей запятой и посмотрим, как округлить до двух знаков после запятой.
Директива о точности
Модификатор точности используется для округления числа с плавающей запятой.
Синтаксис для записи модификатора точности состоит в том, чтобы указать количество десятичных знаков, которое вы хотите округлить, после чего следует точка (.).
«%.2f»
Чтобы округлить число с плавающей запятой до двух знаков после запятой, вы можете выполнить команду printf, как показано ниже:
printf «%.2f \n« 4.4444
На прилагаемом скриншоте видно, что число «4,4444» округлено до «4,44», как мы и хотели.
Точно так же, вместо того, чтобы напрямую указывать ему номер, мы также можем указать здесь переменную.
num=4.4444
printf «%.2f \n« $num
Чтобы указать несколько значений:
num1=3.333
num2=4.4444
printf «%.2f %.3f \n« $num1 $num2
Если вы все еще хотите использовать команду echo и округлить число, в этом случае вы должны использовать команду echo с командой awk для округления числа, как показано ниже:
echo «3.333» | awk ‘{printf(«%.2f \n»,$1)}’
ИЛИ ЖЕ
num=3.333
echo num | awk ‘{printf(«%.2f \n»,$1)}’
Заключение
Этот пост содержит подробное и подробное руководство по команде printf. И мы научились округлять любое число до двух десятичных знаков с помощью команды printf. Кроме того, мы попробовали несколько примеров. Чтобы получить хорошие знания о том, как использовать модификатор точности для округления числа с помощью команды printf. Более того, мы научились округлять любое число с плавающей запятой с помощью команд echo и awk.