Affecter une variable à un nombre décimal - Fichier Shell

Résolu/Fermé
Ilyusis - 30 mai 2016 à 14:57
 Ilyusis - 31 mai 2016 à 10:29
Bonjour,

Je cherche à affecter une variable dans un fichier .sh (que je fais tourner avec Cygwin sous Windows) à un calcul dont le résultat sera un nombre décimal.
Par exemple:
Var=0.002+$ppscas avec $ppscas une variable décimale elle aussi.

Les fichiers shell ne pouvant pas gérer de décimale, j'ai cherché à utiliser la commande bc. Le problème est qu'elle n'est pas reconnue dans mon terminal Cygwin, même en l'ayant installée via Gnuwin. Je ne sais donc pas comment l’appeler dans mon shell.
J'ai vu que la commande "awk" est déjà implémentée dans Cygwin mais je n'arrive pas à trouver la syntaxe pour affecter une variable à un calcul.

Pourriez-vous m'éclairer sur la question?

Merci d'avance :)


A voir également:

4 réponses

dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
31 mai 2016 à 09:58
hello
var=$(awk -v v="$ppscas" 'BEGIN {print v+0.002}')
1
Utilisateur anonyme
31 mai 2016 à 02:11
salut,

awk -v v1="$var" -v v2="$ppscas" 'BEGIN{print v1+v2}'
0
Bonjour,

C'est la variable "var" que je veux créer, je ne veux pas afficher sa valeur mais affecter la valeur (0.002 + $ppscas) pour pouvoir l'utiliser dans une boucle FOR.
J'ai l'impression que la syntaxe "awk -v" ne fonctionne pas si on veut affecter un calcul, i.e. j'ai essayé
awk -v v1="0.002+$ppscas"

mais Cygwin ne fait que m'afficher l'aide de "awk" et stoppe apparemment le code....
0
Merci beaucoup Dubcek, ça fonctionne :)
0