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.