Cómo redondear a 2 decimales en Bash

Cómo redondear a 2 decimales en Bash
Bash es un conocido lenguaje de shell y de comando utilizado para realizar tareas de manera eficiente. Mientras trabaja en secuencias de comandos bash y jugando explícitamente con los números flotantes, a menudo se necesita redondear los números flotantes. En esta publicación, aprenderemos algunos comandos y técnicas de secuencias de comandos de bash para redondear el número a 2 decimales.

Al mostrar los números o variables que incluyen números de flotación en ellos, diferentes comandos pueden imprimir el texto o las variables como eco, imprimir, y printf. Aunque podemos mostrar las variables y los números directamente de tales comandos, sin embargo, el único comando que tiene algunas características y capacidades adicionales es el comando printf que se refiere a nuestro objetivo.

comando printf

El printf El comando es similar a la función printf () en el idioma C. Nos permite formatear e imprimir los argumentos.

Sintaxis

La sintaxis para escribir el comando printf en bash es:

argumentos printf "cadena"

En el comando printf, primero tenemos que proporcionar la cadena en comas invertidas, y luego podemos darle los argumentos.

Ejemplo

Primero imprimamos un texto simple usando el comando printf:

printf "Hola desde Linuxhint."

Puede ver que acaba de imprimir la cadena, pero el nombre de usuario y el nombre de host vienen justo después de la cadena.

Para obtener la cadena en una sola línea, podemos usar el carácter Newline '\ n' para tener la salida limpia y clara:

printf "Hola desde Linuxhint \ n"

Ahora tenemos una salida limpia y clara.

Ahora, veamos cómo proporcionar los argumentos para darle a este comando printf un número flotante y completarlo.

Para proporcionar los argumentos, necesitamos usar el especificador (%s) en la cadena que será reemplazado por los argumentos proporcionados. Por ejemplo:

printf "Número de usuario: %S \ n" 24

Muy bien, ahora ha entendido el uso principal y la funcionalidad del comando printf. Probemos un número flotante y veamos cómo redondear a 2 decimales.

Directiva de precisión

El modificador de precisión se usa para redondear un número de flotación.

La sintaxis para escribir un modificador de precisión es dar la cantidad de puntos decimales que desea completar el número seguido del punto (.).

"%.2f "

Para redondear un número de flotación a 2 decimales, puede ejecutar el comando printf como se muestra a continuación:

printf "%.2f \ n "4.4444

Puede ver en la captura de pantalla adjunta que el número "4.4444 "se redondea a" 4.44 ", como deseábamos que fuera.

Del mismo modo, en lugar de proporcionarle directamente un número, también podemos dar una variable aquí.

num = 4.4444
printf "%.2f \ n "$ num

Para proporcionar múltiples valores:

num1 = 3.333
num2 = 4.4444
printf "%.2F %.3f \ n "$ num1 $ num2

Si aún desea usar el comando ECHO y redondee el número, en ese caso, debe usar el comando ECHO con el comando AWK para redondear el número como se muestra a continuación:

Echo "3.333 "| Awk 'printf ("%.2f \ n ", $ 1) '

O

num = 3.333
Echo Num | awk 'printf ("%.2f \ n ", $ 1) '

Conclusión

Esta publicación contiene una guía detallada y profunda en el comando printf y hemos aprendido a completar cualquier número a 2 decimales utilizando el comando printf. Además, hemos probado varios ejemplos para tener un conocimiento sólido sobre cómo usar el modificador de precisión para redondear un número usando el comando printf. Además, aprendimos a completar cualquier número de flotación usando el comando Echo y AWK.