Supprimer une chaine, deplacer et renomer 1FH

Fermé
Aymen_bass Messages postés 1 Date d'inscription mercredi 2 septembre 2009 Statut Membre Dernière intervention 2 septembre 2009 - 2 sept. 2009 à 15:04
Bonjour,
je débute en Perl et j'ai eu un problème avec le module Copy::File et la fonction move ( j'ai lu le FAQ et fais des recherche sur google mais en vain!)
Mon programme supprime la chaine de caractère "<iframe...>...</iframe>" dans un fichier X.txt(reçu en argument), deplace le fichier original X.txt dans un dossier backup et renomme le nouveau fichier 2X.txt (qui ne contient plus la chaine et créé par le programme). #c'est très simple
voici le code:


use File::Copy;
open(FILE2, ">2".$ARGV[0] ) or die ("prob");
open my ($FILE1), '<', "$ARGV[0]" or die "probleme\n";

while( my $line = <$FILE1> ) {

if ( $line =~ /<iframe .+>.+<\/iframe>/ ) {

print "existe et a ete supprime\n";

$line =~ s/<iframe .+>.+<\/iframe>/ /g;
}else
{
print FILE2 "$line\n" ;
}
}

close(FILE1);
close(FILE2);
#$oldlocation ="$ARGV[0]" ;
#$newlocation = "Backup/$oldlocation";
move( $ARGV[0], "Backup/".$ARGV[0]) or die "move failed: $!\n";
rename("2".$ARGV[0] , $ARGV[0]) or die "rename failed: $!\n";
print"fin\n";

***************************Problème:
Les fonctions move et rename marchent très bien quands elles sont "apart" mais ne font rien dans ce cas-ci!

MESSAGE D'ERREUR:
fail to move at remove-sp.pl line 38 : Permission Denied
ce qui veut a priori dir que je n'ai pas le permission d'ecriture!
comment l'autoriser a le faire?
Pouvez m'aider?
merci
A voir également: