Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2856 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Perl - Gestion processus

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Perl - Gestion processus

n°1261928
Amonchakai
Posté le 20-01-2011 à 18:10:18  profilanswer
 

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 :
  1. #!/usr/bin/perl -w
  2. use strict;
  3. foreach my $name ( <*.txt> )
  4. {
  5.         print "$name\n";
  6.         if( my $pid = fork) {
  7.                 sleep 1;
  8.                 system "prog $name 127.0.0.1" ;
  9.                 close $pid
  10.         } else {
  11.                 system "tcpdump -B 20480 -w ${name}.cap -s 0 -i lo src 127.0.0.1 and udp port 4000";
  12.         }
  13. }


 
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  :jap:  

mood
Publicité
Posté le 20-01-2011 à 18:10:18  profilanswer
 

n°1261934
black_lord
Modérateur
Truth speaks from peacefulness
Posté le 20-01-2011 à 19:54:42  profilanswer
 

pourquoi tu le fais en perl ?


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°1261938
Amonchakai
Posté le 20-01-2011 à 20:35:30  profilanswer
 

pourquoi pas :)
 
Non, aucune raison fondée. Je me galère toujours avec le shell sh. Et j'avais entendu du bien de perl (et dc je me suis que j'allais essayer de m'y mettre).  
 
Si tu vois qqch de plus adapté, je prends. Mon objectif est que ça m'évite de faire ce genre de manip à la main.
 
 
 

n°1261940
black_lord
Modérateur
Truth speaks from peacefulness
Posté le 20-01-2011 à 20:49:24  profilanswer
 

à l'arrache comme ça :

 


for name in `ls *.txt`
do
  tcpdump -B 20480 -w ${name}.cap -s 0 -i lo src 127.0.0.1 and udp port 4000 &
  tcpdumppid=$!
  prog {name} foo bar && kill ${tcpdumppid}
done

 

:spamafote:


Message édité par black_lord le 20-01-2011 à 20:49:52

---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°1261941
Amonchakai
Posté le 20-01-2011 à 20:58:14  profilanswer
 

Bah oui, je suis une buse...
 
Bah merci du coup de patte :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Perl - Gestion processus

 

Sujets relatifs
script de gestion d'user, fin de fichier prématuréeQuel logiciel utiliser pour suivre la conso CPU/Ram d'un processus ?
Gestion d'incidents (ticketing), clients, agenda, fichiers, wiki, suivScript Bash : Gestion des erreurs
Pool connexion MySQL Perl/CGI[Postfix] Gestion d'un domaine sur 2 serveurs
Configuration de OpenERP (Progiciel libre de gestion intégrée)Systéme de gestion à la dl de free
Le topic vert - gestion d'énergie sous Linux 
Plus de sujets relatifs à : Perl - Gestion processus


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR