Comparaison de reels en shell Linux

Résolu
papdjiby Messages postés 2 Statut Membre -  
fiddy Messages postés 11653 Statut Contributeur -
Bonjour,
Cela fait fait une semaine que je suis bloqué sur un problème de comparaisons entre des nombres reels avec le shell linux.
La comparaison entre entiers ecrits sous un certain format marche, ex 12 -le 14 a un sens mais pas 12.00 -le 14. J'ai pensé surmonter le problème en multipliant les nombres reels à comparer par 1000 pour avoir des entiers. Mais le problème est que les entiers sont écrits sous le format identique à 12.00, ce qui peut pas marcher ( le shell n'accepte pas le format 12.00).
Je voudrais donc savoir s'il y'a quelqu'un qui pourrait m'aider pour surmonter ce problème.

Merci d'avance
A voir également:

4 réponses

fiddy Messages postés 11653 Statut Contributeur 1 847
 
Salut
Essaie :
if [ $(echo "12.0 <= 14" | bc) -eq 1 ]; then 
   echo "inferieur
 fi

Cdt
0
dubcek Messages postés 19021 Statut Contributeur 5 637
 
le shell ne comprend pas directement les flottants, utiliser, par ex., awk
0
papdjiby Messages postés 2 Statut Membre
 
Je l'ai testé, cela marche super bien!
Un grand merci à vous!!!!!
0
papdjiby
 
je pense la réponse ici est mieux

http://abs.traduc.org/abs-5.0-fr/ch07s03.html
0
fiddy Messages postés 11653 Statut Contributeur 1 847
 
Tu penses mal ^^.
La question portait sur la comparaison de flottant. Sujet non abordé sur ton lien. Mais bon le sujet date de 4 ans et a déjà été résolu.
0