Comment arrondira à 2 décimales en bash

Comment arrondira à 2 décimales en bash
Bash est un shell bien connu et un langage de commande utilisé pour effectuer des tâches efficacement. Tout en travaillant dans des scripts bash et en jouant explicitement avec les numéros flottants, il est souvent nécessaire pour compléter les numéros flottants. Dans cet article, nous apprendrons quelques commandes et techniques de script bash pour compléter le nombre à 2 décimales.

Tout en affichant les nombres ou les variables qui incluent des numéros de flottants, différentes commandes peuvent imprimer le texte ou les variables comme écho, imprimer, et printf. Bien que nous puissions afficher les variables et les nombres directement à partir de ces commandes, la seule commande qui a des fonctionnalités et des capacités supplémentaires est la Commande printf qui concerne notre objectif.

Commande printf

Le printf La commande est similaire à la fonction printf () dans le langage C. Il nous permet de formater et d'imprimer les arguments.

Syntaxe

La syntaxe pour écrire la commande printf en bash est:

Arguments "String" printf

Dans la commande printf, nous devons d'abord fournir la chaîne dans des virgules inversées, puis nous pouvons lui donner les arguments.

Exemple

Imprimons d'abord un texte simple à l'aide de la commande printf:

printf "Bonjour de Linuxhint."

Vous pouvez voir qu'il vient d'imprimer la chaîne, mais le nom d'utilisateur et le nom d'hôte viennent juste après la chaîne.

Pour obtenir la chaîne en une seule ligne, nous pouvons utiliser le caractère Newline '\ n' pour avoir la sortie propre et claire:

printf "Bonjour à partir de Linuxhint \ n"

Maintenant, nous avons une sortie propre et claire.

Maintenant, voyons comment fournir les arguments pour donner à cette commande printf un numéro de flotteur et à l'arrondir.

Pour fournir les arguments, nous devons utiliser le spécificateur (% s) dans la chaîne qui sera remplacé par les arguments prévus. Par exemple:

printf "Numéro d'utilisateur:% s \ n" 24

D'accord, maintenant vous avez compris l'utilisation et les fonctionnalités principales de la commande printf. Fournissons-le un numéro de flotteur et voyons comment compléter à 2 décimales.

Directive de précision

Le modificateur de précision est utilisé pour compléter un numéro de flotteur.

La syntaxe pour écrire un modificateur de précision consiste à donner le nombre de points décimaux que vous souhaitez compléter le nombre suivi du point (.).

"%.2f "

Pour compléter un numéro de flotteur à 2 décimales, vous pouvez exécuter la commande printf comme indiqué ci-dessous:

printf "%.2f \ n "4.4444

Vous pouvez voir dans la capture d'écran attachée que le nombre «4 4.4444 ”est complété à« 4.44 ”, comme nous le voulions.

De même, au lieu de lui fournir directement un nombre, nous pouvons également donner une variable ici.

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

Pour fournir plusieurs valeurs:

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

Si vous souhaitez toujours utiliser la commande echo et arrondir le numéro, dans ce cas, vous devez utiliser la commande echo avec la commande awk pour arrondir le numéro comme indiqué ci-dessous:

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

OU

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

Conclusion

Cet article contient un guide détaillé et profond sur la commande printf et nous avons appris à compléter n'importe quel numéro à 2 décimales en utilisant la commande printf. De plus, nous avons essayé plusieurs exemples pour avoir des connaissances solides sur la façon d'utiliser le modificateur de précision pour compléter un numéro en utilisant la commande printf. De plus, nous avons appris à compléter tout numéro de flotteur en utilisant la commande echo et awk.