Bonjour,
J'ai une tache tres reppetitive a faire, du coup je pensais faire un script perl pour automatiser le truc.
Ce que je dois faire, c'est:
- lancer tcpdump (qui ecris dans un fichier precis)
- lancer une application qui emmet des data sur la boucle locale (qu'elle lit dans un fichier)
A la fin de l'application ci dessus, je veux stopper tcpdump. (et ensuite on passe au fichier suivant)
Mon script perl:
Code :
- #!/usr/bin/perl -w
- use strict;
- foreach my $name ( <*.txt> )
- {
- print "$name\n";
- if( my $pid = fork) {
- sleep 1;
- system "prog $name 127.0.0.1" ;
- close $pid
- } else {
- system "tcpdump -B 20480 -w ${name}.cap -s 0 -i lo src 127.0.0.1 and udp port 4000";
- }
- }
|
Comme on vois, j'avais tenté de faire un fork et de d'arreter le processus fils. a la fin du programme.
Mais si je fais un 'ps aux | grep tcpdump' je vois que mes tcpdump tournent toujours....
Il y aurait il une solution propre a ce problème?
Merci