gilou Modérateur Modosaurus Rex | Bon, en virant ton test initial pour prendre moins de place. Ce qui te manquait, c'est de connaitre l'usage de glob()
  Code :
 #!/usr/bin/perl use strict; use warnings;   $month++; $year += 1900; # autant garder les bonne valeurs dans les variables   printf("Nous sommes le : %02d du mois %02d de l'annee %02d\n",  $mday,  $month,  $year% 1000);    my $dateformated =  sprintf("%02d-%02d-%02d",  $year% 1000,  $month,  $mday);  #date formatee, peut resservir my $logpattern = "BatchPorterExport_error_${dateformated}_*.log"; #pattern des fichiers a chercher my @loglist =  glob($logpattern);  # on en recupere le liste   foreach (@loglist) { on boucle sur la liste pour processer fichier a fichier   open(my $file1,  '>>',  $_) or die ("Probleme d'ouverture $_\n" );    sprintf($file1,  "Nous sommes le : %02d du mois %02d de l'annee %02d\n",  $mday,  $month,  $year% 1000);  } 
 
  |  
 
   On peut aussi l'écrire de manière plus compacte:
  Code :
 #!/usr/bin/perl use strict; use warnings;   $month++; $year += 1900; # autant garder les bonne valeurs dans les variables   printf("Nous sommes le : %02d du mois %02d de l'annee %02d\n",  $mday,  $month,  $year% 1000);  my $dateformated =  sprintf("%02d-%02d-%02d",  $year% 1000,  $month,  $mday);    foreach (glob("BatchPorterExport_error_${dateformated}_*.log" )) {   open(my $file1,  '>>',  $_) or die ("Probleme d'ouverture $_\n" );    sprintf($file1,  "Nous sommes le : %02d du mois %02d de l'annee %02d\n",  $mday,  $month,  $year% 1000);  } 
 
  |  
 
   Notes que glob() donne la liste des fichiers correspondant à un pattern dans le repertoire courant.
 Il faut donc éventuellement faire un   cd "le bon répertoire";
 avant d'appeler glob(), selon l'endroit ou tu executes le script.
 A+,    Message édité par gilou le 18-03-2011 à 14:50:25  ---------------
			 There's more than what can be linked! --  Le capitaine qui ne veut pas obéir à la carte finira par obéir aux récifs. -- Il ne faut plus dire Sarkozy, mais Sarkozon -- (╯°□°)╯︵ ┻━┻
    |