Je ne sais pas si j'ai bien compris le problème. Est-ce que mettre à
jour une variable et tester son changement d'état irait ?


Le 07/03/2019 à 10:21, Christophe HENRY a écrit :
> Le Wed, 6 Mar 2019 22:31:29 +0100 (CET),
> [email protected] a écrit :
>
>> Salut tout le monde,
>>
>> J'ai fait un petit script pour tester si un serveur est en ligne sur
>> un réseau. Si le serveur est en ligne un fichier de conf prend un
>> certain contenu, dans le cas contraire il prend un autre contenu.
>> Jusque là c'est simple. Le problème c'est de faire en sorte que le
>> fichier de conf ne reçoive pas le contenu en permanence. Est-ce que
>> ce genre de problème parle à quelqu'un?
> À vue de nez, ton script doit mémoriser le dernier état mesuré. Il y a
> un changement d'état, quand le serveur passe de "en-ligne" à
> "hors-ligne" ou le contraire. Dans ce cas, il faut mettre à jour le
> fichier de configuration en fonction de l'état du serveur.
>
> Exemple en pseudo-code Python.
>
> """""""""""""""""""""""""""""""""""""""""
> #/usr/bin/python3
> serveurÉtaitEnLigne = False
>
> enLigne = testeEnLigne() # Retourne True si le serveur est en ligne,
>                          # False sinon.
>
> if enLigne != serveurÉtaitEnLigne:
>     serveurÉtaitEnLigne = enLigne
>     if enLigne:
>         configuration = "Configuration pour en ligne"
>     else:
>         configuration = "Configuration pour hors ligne"
> """""""""""""""""""""""""""""""""""""""""
>
> En bash, tu peux créer un fichier pour mémoriser l'état (mktemp par ex.)
> et utiliser flock pour éviter la réentrance si la requête réseau tarde
> trop.
>
>
> _______________________________________________
> libre mailing list
> [email protected]
> https://brassens.heberge.info/cgi-bin/mailman/listinfo/libre


-- 
Installer facilement GNU/Linux : http://numopen.fr

    .--.
   |o_o |
   ||_/ |
  //    \\    Envoyé avec mon GNU/Linux
 (|      |)
/ \_   _/ \
\___)=(___/

_______________________________________________
libre mailing list
[email protected]
https://brassens.heberge.info/cgi-bin/mailman/listinfo/libre

Répondre à