[PERL] Ecrire dans un fichier

Résolu
kayari Messages postés 2 Statut Membre -  
 cyrille -
Bonjour tout le monde,
je programme en perl et j'ai besoin de modifier des paramètres dans un fichier automatiquement. voici un extrait du fichier :
n 108
m 56
s 2
t 4
a 1 2 1
j'ai besoin d'accéder aux lignes 3 et 4 et de changer 2 et 4 par d'autres valeurs (se répète en boucle). Je n'ai pas su changer des valeurs à l'intérieur du fichier.
Est ce que quelqu'un pourrait me donner une indication.
Merci d'avance

44 réponses

  • 1
  • 2
  • 3
Résumé de la discussion

Le problème porte sur modifier automatiquement des paramètres dans un fichier avec Perl, en visant les lignes 3 et 4 et en remplaçant les valeurs 2 et 4 par d'autres, de manière répétée. La réponse principale propose de lire le fichier dans un tableau, puis de modifier les contenus correspondants avec des substitutions comme $contenu[2] s/2/5/ et $contenu[3] s/4/6/, avant de réécrire le fichier. Des contributions complémentaires évoquent des difficultés sur les chemins de fichiers, l'initialisation des variables et des conseils pratiques pour écrire correctement. Pour éviter des erreurs lors de la substitution et de la sauvegarde, il est suggéré de tester avec des échantillons et de vérifier l'encodage et les index.

Généré automatiquement par IA
sur la base des meilleures réponses
  1. philtrain
     
    Bonsoir,

    #!/usr/bin/perl -w
    use strict;
    # D'abord charger le fichier:
    open(FILE, "$fichier") || die "Erreur E/S:$!\n";
    my @contenu = <FILE>;
    close(FILE);
    # Ensuite, changer à la ligne 3 et 4:
    $contenu[2] =~ s/2/5/;   # par exemple
    $contenu[3] =~ s/4/6/;   # par exemple
    # Enfin on sauvegarde le fichier:
    open(FILE, ">$fichier") || die "Erreur E/S:$!\n";
    foreach my $ligne (@contenu) {
        chomp $ligne;
        print FILE "$ligne\n";
    }
    


    OK?
    8
    1. kayari
       
      En fait c'est avec cette méthode que j'ai fini par faire. Mais le problème est que le fichier est volumineux et cette procédure est appelée plusieurs fois dans une boucle donc je voulais trouver une méthode plus rapide.
      remarque : à chaque fois je vais modifier les lignes 3 et 4 seulement et j'ai des dizaines de lignes dans le fichier
      Merci pour ton indication
      0
    2. cyrille
       
      ça marche, mais il manque un "close(FILE)" à la fin du code
      0
  2. chabRRR Messages postés 63 Statut Membre 5
     
    Bonjour,

    Premièrement, je voudrais aussi écrire dans un fichier, mais je ne coonias rien du perl.

    mon fichier est normalisé comme cela:
    05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl

    je souhaite pouvoir ajouter en début de chaque ligne une date au format 00/00/0000 puis un carcatere "espace" et un "=" pour séparer. L'idéal serait d'avoir une fenetre d'affichage qui demande "veuillez saisir la date a rajouter au fichier :" et ensuite ajouter cette date au début de chaque ligne.

    les lignes du fichier doient devenir comme cela par exemple
    02/03/2007 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl

    Ensuite, j'aimerais, toujours en perl, concatener plusieurs fichers. C'est a dire, j'ai plusieurs fichiers .txt de date différentes (auxquels j'ai pu ajouter la date auparavant) et je voudrais n'en avoir plus qu'un seul qui contient l'ensemble du contenu des autres fichiers.

    En ésperant avoir été clair ...
    Merci par avance
    1
  3. chabRRR Messages postés 63 Statut Membre 5
     
    script actuel
    https://www.cjoint.com/?dnpQGKeWgD

    type resultatfinal.txt
    https://www.cjoint.com/?dnpVRjmYDV

    effectivement, sur l'imprim ecran, j'avais oublié le M
    mais après avoir refait plusieurs fois la manip, et sans oublié le M, ça ne marche pas ... je ne sais plus quoi essayer arrrgggggHHH

    ce n'est pas le M, enfin, ça l'a été à un moment sans que je me rends compte, mais plus maintenant.
    1
  4. chabRRR Messages postés 63 Statut Membre 5
     
    jai trouvé une premiere erreur dans le nom des fichiers statXiti*, je chauffe , je me rapporche.

    maintenant, la console me dit :
    D:\Documents and Settings\M149067\Bureau>c:\perl\bin\perl.exe code_f.pl
    Use of uninitialized value in concatenation (.) or string at code_f.pl line 9.
    Use of uninitialized value in concatenation (.) or string at code_f.pl line 9.
    Use of uninitialized value in concatenation (.) or string at code_f.pl line 9, <
    F_LIRE> line 1274.
    Use of uninitialized value in concatenation (.) or string at code_f.pl line 9, <
    F_LIRE> line 1274.
    Use of uninitialized value in concatenation (.) or string at code_f.pl line 9, <
    F_LIRE> line 2721.
    Use of uninitialized value in concatenation (.) or string at code_f.pl line 9, <
    F_LIRE> line 2721.
    Use of uninitialized value in concatenation (.) or string at code_f.pl line 9, <
    F_LIRE> line 5271.
    Use of uninitialized value in concatenation (.) or string at code_f.pl line 9, <
    F_LIRE> line 5271.
    Use of uninitialized value in concatenation (.) or string at code_f.pl line 9, <
    F_LIRE> line 7052.
    Use of uninitialized value in concatenation (.) or string at code_f.pl line 9, <
    F_LIRE> line 7052.
    1
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    tes fichiers commence avec stat ou sta ?
    1
  7. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Comme je te l'ai dit perl ecrire dans un fichier#25

    une seule lettre peut faire couler beaucoup d'encre :-DD

    c'est bien que tu as réussi :-))

    Bonne continuation.
    1
  8. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    petite question.
    Ton fichier contient plusieurs lignes
    s2
    t4
    

    C'est ça que tu veut modifier?
    Si tu me donnes le fichier (sauf s'il n'est pas confidentiel) je pourrais t'aider.

    A+
    0
  9. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut kayari,

    Il y a une chose que je ne comprend pas.

    " à chaque fois je vais modifier les lignes 3 et 4 seulement et j'ai des dizaines de lignes dans le fichier "

    Ton fichier volumineux quel que soit sa taille ne contient qu'une seule ligne 3 et une seule ligne 4.

    Donc c'est quoi ton souci en fait?
    0
  10. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Si toutes les lignes que tu veut modifier sont

    s2
    t4

    alors tu n'as qu'à taper dans la konsole

    perl -p -i -e 's#(?<=s)2$#5#g' ton_fichier
    perl -p -i -e 's#(?<=t)4$#6#g' ton_fichier
    0
  11. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    je n'ai pas testé

    tu peux le tester sans peur, rien ne sera modifié dans tes fichiers d'origine
    #!/usr/bin/perl
    use warnings;use strict;
    
    print "Veuillez saisir la date à rajouter au fichier (format jj/mm/aaaa, ex : 12/03/2007) : ";
    
    chomp(my $date = <STDIN>);
    
    
    open F_ECRIRE,">>resultat.txt" or die "E/S : $!\n";
    
    chomp(my @fic = glob("*.txt"));
    
    foreach my $e(@fic){
      open F_LIRE,"$e" or warn "E/S : $!\n";
      while(<F_LIRE>){
        print F_ECRIRE "$date = $_";
      }
    } 
    __END__


    ou en ligne de commande(il faut juste mettre la date que tu veux
    cat *.txt | perl -ne 's#(.*)#12/03/2007 = $1#;print' > resultat.txt
    Danbs les 2 cas le resultat on l'obtient dans le fichier resultat.txt.
    Donc avant de la 2ème variante il faut vider resultat.txt
    0
  12. chabRRR Messages postés 63 Statut Membre 5
     
    Le fichier resultat.txt est vide après execution de la commande ...

    Je pense que cela ne fonctionne pas correctement, la compilation est ok, il y a bien création du fichier resultat.txt mais aucun contenu a l'interieur.

    Est ce normal ?

    en attendant, je vais essayer avec mes fichiers.
    0
  13. chabRRR Messages postés 63 Statut Membre 5
     
    J'ai parler un peu trop vite ...
    Je ne comprends pas assez bien la structure du code pourpouvoir tester avec mes fichiers, j'aurai besoin de qq commentaires :

    print "Veuillez saisir la date à rajouter au fichier (format jj/mm/aaaa, ex : 12/03/2007) : "; #affiche la demande de saisie

    chomp(my $date = <STDIN>); # enregistre la saisie dans la variable date ?

    open F_ECRIRE,">>resultat.txt" or die "E/S : $!\n"; # crée le fichier resultat en mode ecriture ??

    chomp(my @fic = glob("*.txt")); # ??

    foreach my $e(@fic){
    open F_LIRE,"$e" or warn "E/S : $!\n";
    while(<F_LIRE>){
    print F_ECRIRE "$date = $_";
    }
    }
    __END__

    je suis largué sur la fin, avec la boucle foreach

    Help please
    0
  14. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    La ligne de commande fonctionne
    jack@pc-jack:~$ ls *.txt
    f1.txt  f2.txt  f3.txt
    jack@pc-jack:~$ cat *.txt
    05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    jack@pc-jack:~$ cat *.txt | perl -ne 's#^#12/03/2007 = #;print' > resultat.txt
    jack@pc-jack:~$ cat resultat.txt
    12/03/2007 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    12/03/2007 = 05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    12/03/2007 = 05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    12/03/2007 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    12/03/2007 = 05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    12/03/2007 = 05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    12/03/2007 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    12/03/2007 = 05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    12/03/2007 = 05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl

    0
  15. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Le script aussi
    jack@pc-jack:~$ ls *.txt
    f1.txt  f2.txt  f3.txt
    jack@pc-jack:~$ cat f1.txt
    05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    jack@pc-jack:~$ cat f2.txt
    05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    jack@pc-jack:~$ cat f3.txt
    05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    jack@pc-jack:~$ cat fic.pl
    #!/usr/bin/perl
    use warnings;use strict;
    
    print "Veuillez saisir la date à rajouter au fichier (format jj/mm/aaaa, ex : 12/03/2007) : ";
    
    chomp(my $date = <STDIN>);
    
    
    open F_ECRIRE,">>resultat.txt" or die "E/S : $!\n";
    
    chomp(my @fic = glob("*.txt"));
    
    foreach my $e(@fic){
      open F_LIRE,"$e" or warn "E/S : $!\n";
        while(<F_LIRE>){
            print F_ECRIRE "$date = $_";
        }
    }
    __END__
    
    
    jack@pc-jack:~$ ls resultat.txt
    ls: resultat.txt: Aucun fichier ou répertoire de ce type
    jack@pc-jack:~$ perl fic.pl
    Veuillez saisir la date à rajouter au fichier (format jj/mm/aaaa, ex : 12/03/2007) : 12/03/2007
    jack@pc-jack:~$ cat resultat.txt
    12/03/2007 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    12/03/2007 = 05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    12/03/2007 = 05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    12/03/2007 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    12/03/2007 = 05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    12/03/2007 = 05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    12/03/2007 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    12/03/2007 = 05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    12/03/2007 = 05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl

    0
  16. chabRRR Messages postés 63 Statut Membre 5
     
    Bon alors, tout compte fait, ça marche nickel merci

    Si j'ai bien compris, ça marche avec un fichier *.txt dans le meme reprtoire que le code.pl...vrai ? mais si j'ai plusieurs fichiers dans le repertoire et je souhaite choisir le fichier a traiter ??

    Je souhaiterais améliorer cela, je voudrais pouvoir effectuer l'ajout de date sur plusieurs fichiers txt avec des date différentes, on obtient plusieurs fichiers résultat.txt pour ensuite, concatener l'ensemble des resultat.txt en un seul fichier resultatfinal.txt !

    Comment faire?
    Merci
    0
  17. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Je suis au boulot.
    J'ai vu que tu as posté le msg sur developpez.com :-))

    Je vais regarder ce soir.
    0
  18. chabRRR Messages postés 63 Statut Membre 5
     
    OK, c'est cool

    moi aussi, je suis au boulot. c'est d'ailleurs pour ça que je fais ça.

    Pour résumé, j'ai presque compris mais il me reste à, dans l'ordre :

    - pouvoir choisir une date et un fichier, obtenir un fichier résultat
    ex: le fichier statXiti_061206 à la date du 06/12/2006, ce qui donne en sortie le fichier resultat_06122006.txt
    et ce, pour plusieurs fichiers dans le meme repertoire avec des dates différentes (staXiti_061207.txt, staXiti_061208.txt, staXiti_061209.txt...)

    - etre capable de concatener, si possible de façon automatique, les fichiers résultat_XDATEX.txt en un seul fichier resultatfinal.txt

    Merci pour ton aide,
    Bon courage
    0
  19. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Avant l'exécution de script

    lami20j@debian:~/trash/chabrrr$ ls -1
    staXiti_061207.txt
    staXiti_061208.txt
    staXiti_061209.txt
    xiti_stat.pl
    lami20j@debian:~/trash/chabrrr$ cat staXiti_061207.txt
    05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    lami20j@debian:~/trash/chabrrr$ cat staXiti_061208.txt
    05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    lami20j@debian:~/trash/chabrrr$ cat staXiti_061209.txt
    05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl

    Le script
    lami20j@debian:~/trash/chabrrr$ cat xiti_stat.pl
    #!/usr/bin/perl
    use warnings;use strict;
    my @fic_stat = </home/lami20j/trash/chabrrr/staXiti*>;
    
    foreach my $fichier (@fic_stat){
      $fichier =~ /\/staXiti_(\d{4})(\d\d)\.txt/;
      my $date = "${1}20$2";
      my $fic = "resultat_" . "$date.txt";
    
      open F_ECRIRE,">>$fic" or warn "E/S : $!\n";
      open F_LIRE,"$fichier" or warn "E/S : $!\n";
    
      while(<F_LIRE>){
        s/^/$date = /;
        print F_ECRIRE $_;
      }
    }
    #*********** FIN TRAITEMENT **********#
    #
    # concateantion dans resultatfinal.txt
    open F_ECRIRE,">>resultatfinal.txt" or die "E/S : $!\n";
    my @fic_res = </home/lami20j/trash/chabrrr/resultat_*.txt>;
    
    foreach my $e(@fic_res){
      open F_LIRE,"$e" or warn "E/S : $!\n";
      while(<F_LIRE>){
        print F_ECRIRE;
      }
    }
    __END__
    

    Exécution de script
    lami20j@debian:~/trash/chabrrr$ perl xiti_stat.pl
    

    Le résultat
    lami20j@debian:~/trash/chabrrr$ ls -1
    resultat_06122007.txt
    resultat_06122008.txt
    resultat_06122009.txt
    resultatfinal.txt
    staXiti_061207.txt
    staXiti_061208.txt
    staXiti_061209.txt
    xiti_stat.pl
    lami20j@debian:~/trash/chabrrr$ cat resultat_06122007.txt
    06122007 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    06122007 = 05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    06122007 = 05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    lami20j@debian:~/trash/chabrrr$ cat resultat_06122008.txt
    06122008 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    06122008 = 05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    06122008 = 05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    lami20j@debian:~/trash/chabrrr$ cat resultat_06122009.txt
    06122009 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    06122009 = 05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    06122009 = 05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    lami20j@debian:~/trash/chabrrr$ cat resultatfinal.txt
    06122007 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    06122007 = 05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    06122007 = 05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    06122008 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    06122008 = 05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    06122008 = 05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    06122009 = 05:57:42 10.100.62.52 /hit.xiti s=241243&s2=1&p=PNC&hl
    06122009 = 05:57:43 10.100.62.52 /hit.xiti s=241243&s2=1&p=GSM_reconnu&hl
    06122009 = 05:57:49 10.100.62.52 /hit.xiti s=241243&s2=1&p=transfere&hl
    lami20j@debian:~/trash/chabrrr$
    
    
    0
    1. chabRRR Messages postés 63 Statut Membre 5
       
      Bonjour,

      je te remercie pour ton aide

      Mais j'ai encore deux petites questions :

      1. je n'arrive pas a faire fonctionner le script correctement avec mes noms de repertoire. Jai essayé comme cela mais ça ne convient pas ...

      le code

      #!C:/Perl/bin/perl.exe


      my @fic_stat = </d:\Documents and SettingsM149067\Bureau\Simon\DB\Perl\StatXiti\staXiti*>;

      foreach my $fichier (@fic_stat){
      $fichier =~ /\/staXiti_(\d{4})(\d\d)\.txt/;
      my $date = "${1}20$2";
      my $fic = "resultat_" . "$date.txt";

      open F_ECRIRE,">>$fic" or warn "E/S : $!\n";
      open F_LIRE,"$fichier" or warn "E/S : $!\n";

      while(<F_LIRE>){
      s/^/$date = /;
      print F_ECRIRE $_;
      }
      }
      #*********** FIN TRAITEMENT **********#
      #
      # concateantion dans resultatfinal.txt
      open F_ECRIRE,">>resultatfinal.txt" or die "E/S : $!\n";
      my @fic_res = </d:\Documents and Settings\M149067\Bureau\Simon\DB\Perl\StatXiti\resultat_*.txt>;

      foreach my $e(@fic_res){
      open F_LIRE,"$e" or warn "E/S : $!\n";
      while(<F_LIRE>){
      print F_ECRIRE;
      }
      }
      __END__

      Que dois je faire pour indique mon nom de repertoire ?

      2. je travaille sous windows et pas unix. je crois que la commande cat devient copy sous win, je vais aller voir le fonctionnement de cette commande. Si tu as des informations là dessus aussi, n'hesites pas a m'en faire part;

      Merci encore
      0
  20. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Je vais voir ça

    Au lieu de cat utilise type sous win
    0
  • 1
  • 2
  • 3