un problème avec le module File::Copy
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:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| 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 "fail to move";
rename("2".$ARGV[0] , $ARGV[0]) or die "fail to move";
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!
Pouvez m'aider?
merci