Bonjour,
je revient vers vous avec encore plus de niveaux

il faut que je copie un fichier vers un autre répertoire, OK
si un fichier portant le même nom existe déja, je rajoute un Z au fichier et je le copie, OK
si un fichier portant déja un Z existe, j'en met 2, pas OK
etc j'en met 3 ..., pas OK du tout

voila mon code, a mon avis il est presque bon mais la je comprend pas
merci à tous

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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 
#!/usr/bin/perl
 
use File::Copy;
my $DEST = "C://temp";
my $repert = "C://tmp";
my $fich = "mimi.txt";
 
 
opendir(DIRHANDLE,"$DEST") or die "Can't open $DEST: $!";
 
if (-e $fich){
    print "le fichier existe\n";
      $fichier1 = $fich;
      print $fichier1;   print "\n";
 
          chop($fichier1); chop($fichier1); chop($fichier1); chop($fichier1);
           $fichier1 = $fichier1."Z.txt";
           print "fichier en Z :$fichier1\n";
 
 
      while (-e $fichier1)
       {
          print "plus de Z";
          $new = $fichier1;
          chop($new); chop($new); chop($new); chop($new);
          $new = $new."Z.txt";
          print "$new\n";
          $fichier1=$new;
       }
 
      $new=$fichier1;
      print $new;           print "\n";
      print "$DEST"."/$new\n" ;
      print "ca marche";
 
    copy ("$repert/".$fich , "$DEST/".$new);
                }