Vous n'êtes pas identifié(e).
Dernière modification par isma (19-03-2012 17:41:02)
Hors ligne
Le && (et) ne te garantit pas que le script va attendre que les deux conditions soient remplies. C'est un ET qui passe la main.
Dés que l'une d'elle est terminé, on sort de la boucle. Ce sont deux conditions distinctes.
C'est à mon avis ici que se posent le problème.
Tu executes bien la commande squid (/usr/sbin/squid -k shutdown et -k check) et en même temps la comparaison (le fameux &&). Si la comparaison de n se termine avant la commande d'extinction de squid, tu sorts de la boucle et casse ainsi toute autre condition, la boucle est rompue, le contrôle du processus est incertain.
La meilleur solution serait d'attendre que le processus se termine si cela est le but.
Tant que le processus existe on boucle et patiente 5 secondes.
Si tu veux utiliser un compteur pour killer le processus à coup sur :
On kill squid et on attend 10 secondes.
Tu peux aussi utiliser des conditions avec if else à l'interieure d'une boucle. Ainsi, c'est toi qui décide quand on sort de la boucle :
@+
Zoroastre.
Dernière modification par zoroastre74 (15-03-2012 23:37:33)
Hors ligne
Voilà le script, je sais pas si c'est un problème de syntaxe ou bien de logique :
Je te remercie encore de ton aide pour mes premiers pas dans le bash !
Hors ligne
Voilà le script, je sais pas si c'est un problème de syntaxe ou bien de logique :
Je te remercie encore de ton aide pour mes premiers pas dans le bash !
Hors ligne
Le & rend la main au script. Si il faut une certaine latence pour que squid se clos, il ne faut rendre la main qu'au moment où squid est bien arrêté.
Tout simplement :
On peut également informer les logs de l'etat de squid au moment de l'arrêt machine.
Je ferais un truc dans ce genre si tu tiens à ton & :
A tester, c'est écrit rapidos.
Je précise que je ne connais pas du tout squid dans la pratique.
@+
Zoroastre.
Dernière modification par zoroastre74 (16-03-2012 18:31:11)
Hors ligne
J'ai un peu de mal avec le sed et la fonction grepconf . Je ne comprends pas l'usage .
Enfin voilà la fin de l'histoire . Prochain script : changer automatiquement les règles de routage si Squid chute .
Merci pour l'aide
A+
Hors ligne
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
J'ai un peu de mal avec le sed et la fonction grepconf . Je ne comprends pas l'usage
sed permet de faire du hashage de data. Cela permet par exemple d'isoler des informations essentielles entre des metatags définis par l'utilisateur. C'est trés pratique sur des fichiers html, rss ou de config dans le cas présent, en effet, ces fichiers contiennent des caractères qui auraient pûs être interprétés comme des redirections ("><|") ou comme des fins de lignes (";/&") par le shell.
sed est trés puissant pour cette utilisation. Il y a d'ailleurs beaucoup d'humour dans le nom de la fonction grepconf()
Lorsque j'utilise sed, j'ai toujours le man à dispo
Les fonctions grepconf() et grepconf2() prennent 2 paramètres en entrée :
Le premier paramètre est la valeur recherchée : cache_dir dans la variable sq
Le second paramètre est comparé au résultat du sed et permet de savoir si le cache existe ou pas lors de la phase de démarrage (fonction start())
@+
Zoroastre.
Hors ligne
Hors ligne