• # J'ai fini par trouver

    Posté par (site web personnel) . En réponse au message Bash : tester des nombres décimaux [Résolu]. Évalué à 2.

    Comp=`echo "$Latitude < 90 && $Latitude > -90" | bc -l 2> /dev/null` 
    if [ -z $Comp ]; then exit 1;fi
    if [ $Comp -eq 0 ]; then exit 1;fi
    
    

    si $Latitude contient autre chose qu'un nombre $Comp sera vide, sinon la comparaison se fera et retournera 1 si vrai et 0 si faux

    pour le reste c'est facile

    LatDegres=${Latitude%.*}
    Minutes=`echo "0."${Latitude#*.}*60 | bc -l` 
    LatMinutes=${Minutes%.*}
    Secondes=`echo "0."${Minutes#*.}*60 | bc -l`
    LatSecondes=${Secondes%.*}
    
    

    Bon, mon codage de débutant va faire sourire ici, mais ça marche (enfin, me semble-t-il)

    Si quelqu'un veut proposer mieux…

    Au fait : bc se fout visiblement des locales