Bonjour,
Toujours aussi bleu en perl j'essaie de traduire un script en shell qui me permet de redémarrer le démon des qu'un port TCP bien défini est libéré.
En shell cela donne ceci :
En fait ma difficulté est dans la boucle while que j'ai traduis comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 # ærret du démon svcadm disable svc:/application/MGCS:default # Verification de la purge des PORT TCP while [ -n "`netstat -an | grep 29041 | grep -v CLOSE_WAIT `" ] do echo -n "." sleep 10 wait done echo echo echo " Redemarrage du demon" echo svcadm enable svc:/application//MGCS:default
Je pense que suis passé à côté de quelque chose car la boucle ne se fait pas et le script reste bloqué....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 #!/usr/bin/perl use warnings; use strict; use Sys::Hostname; use Socket; my $netstat=`netstat -an | grep 29041 | grep -v CLOSE_WAIT`; while ( $netstat = <> ) { print "."; sleep(10); $netstat=`netstat -an | grep 29041 | grep -v CLOSE_WAIT`; }
Merci de votre aide.
Partager