Léa-Linux & amis :   LinuxFR   GCU-Squad   Zarb.Org   GNU
Archive de la liste aide - [Aide] problème avec une fonction dans un script bash
Bonsoir,

Pour le programme, c'est OK il fonctionne , mais je vais voir si je  
peux l'améliorer avec les fonctions bash.

Pour le contexte, désolé, je n'avais pas réalisé l’intérêt. Donc pour  
mettre fin au suspense, voici ce que fait le script: La commande  
groupreadresponse lit des valeurs sur un bus domotique (les valeurs  
sont des index de compteurs et le bus est du konnex). La réponse qui  
revient est :
Send request
Read from 0.0.0
Response from 1.1.32: 07 4E

La partie qui m'intéresse est 07 4E, voir un troisième ou un quatrième  
octet soit xx xx xx xx. La trame de début (les 50 premiers caractères)  
ne changent jamais.
L'objectif est de récupérer une vingtaine de valeurs, de les convertir  
en décimal, et de créer un fichier csv type:
index1;2850
index2;335
...
et d'envoyer une fois par mois ce fichier par mail, afin de suivre les  
consommations du bâtiment.

Et voila, j’espère qu je suis clair. En tous les cas, merci car  
maintenant le script fonctionne et j'ai compris l'origine de l'erreur.
Je vais me pencher sur tes liens bash.
Merci
Benoit


----------------message d'origine-----------------
De: Peko [papa.papa.echo at gmail.com  ]
Pour: "Liste d'entraide du site http://www.lea-linux.org"  
[aide at lea-linux.org  ]
Date: Mon, 18 Jan 2016 13:55:09 +0100
-------------------------------------------------


> A notre décharge, il faut dire que ne nous donner qu'un script partiel
> sans la moindre explication ni contexte, c'est piégeur.
>
> Pour ce qui est de "craindre d'avoir plusieurs espace dans la chaîne
> de caractère", il faut toujours imaginer le pire pour faire ce qu'on
> appelle "blinder le code".
>
> Une fois qu'on a une version qui fonctionne dans le contexte réel avec
> des données réelles, si on a le budget, il faut blinder le code contre
> tout ce qui peut surprendre un beau jour. Comme deux caractères
> espaces au lieu d'un seul.
>
> Si le prog se plante pour un caractère en plus, on peut dire qu'il est
> très faiblement blindé.
>
> C'est pour cela qu'en programmation défensive, la règle est de
> minimaliser les hypothèses. Bref, prévoir le pire, ou le moins
> possible se baser sur la situation idéale.
>
> C'est quand même à cause d'un bug de calcul qu'Arianespace a perdu une
> fusée et des millions d'euros.
> Une fonction faisant des calculs sur des capteurs ne prévoyait pas un
> dépassement d'une certaine limite. Le jour ou cela a dépassé, car le
> modèle de fusée avait grandi en volume et masse, sans changer le code,
> ça a planté. Et perdu la fusée au décollage.
>
> Cela a forcé à revoir l'ingéniérie logicielle, au moins chez eux.
>
> __P
> _______________________________________________
> Aide mailing list
> Aide at lea-linux.org   http://lists.lea-linux.org/listinfo/aide
>


-- 
Benoit SZCZYGIEL


Serveur hébergé par ST-Hebergement et Lost-Oasis / IRC hébergé par FreeNode / NS secondaire hébergé par XName
Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons