Rechercher : dans
Par :

Perl

hanna, le 20 jun 2001 à 10:04:35 
 Signaler ce message aux modérateurs

Bonjour.

Je suis debutante en perl et j'ai une petit probleme. Je dois faire une recherche dans un repertoare et ici je dois faire "rename" a en certaine fichier. J'ai fait la recherche recursiv, et quand j'ai fait le renomage d'un repertoare il me retourne un grand numero de 10 chiffres.

Merci beaucoup,

Hanna

Code perl:



# !/perl/bin
#declaram ca variabila globala $directorul in care se face cautarea
#use strict;
my $basedir = "d:teste\\";
my $newdir = "d:teste\\log\\syndication\\Account20\\";
my $oldfile = "d:teste\\log\\syndication\\Account20\\".$f[$i]."_19.txt";
my $newfile = "d:teste\\log\\syndication\\Account20\\".$s[$i]."_19.txt";
my $log2 = "d:teste\\fichier.log";
my $log1 = "d:teste\\repertoire.log";
#my $fisier = "Data";
# cream tabloul cu toate fisierele
#print $basedir;

@f = ('syd_81', 'syderror_81');
@s = ('syd_20', 'syderror_20');
for ( $i=0 ; $i<2 ; $i++) {
print "$newfile = d:teste\\log\\syndication\\Account20\\".$s[$i]."_19.txt"."\n";
print "$oldfile = d:teste\\log\\syndication\\Account20\\".$f[$i]."_19.txt"."\n";
}

@files=();

@dirs = ('Upload\\', 'log\\','log\\syndication\\','log\\syndication\\Account20\\');

open(LOG, ">$log1") || die ("Erreur d'ouverture de $log1, Erreur: $!\n") ;
print "fisierul log1 a fost creat\n";
close LOG;
open(LOG, ">$log2") || die ("Erreur d'ouverture de $log2, Erreur: $!\n") ;
print "fisierul log2 a fost creat\n";
close LOG;
foreach $file (@dirs){
$current_dir="$basedir$file";
files_names($current_dir);
}
############################################################################
sub files_names #06/14/01 9:32:AM
############################################################################
{
my($dir) = @_;
my(@all_files);
print $dir."\n" ;

my $newfile;
my $fisier;
opendir(MYDIR , "$dir") || (print "nu putem deschide directorul".$dir." \n" and exit);
#readdir(MYDIR);
#closedir(MYDIR);
## $start_dir este directorul curent....adica nu chiar
foreach $file (readdir(MYDIR)){
closedir(MYDIR);
next if ($file eq "." || $file eq "..");
$file = "$dir$file";
if (-d ($file)) {#&& ($file=~/Account/)) {
files_names("$file");
if ( $file =~/81/) {
print "---------------------------- ".$file."\n";
rename ($file, $newdir);
open(LOG1, ">>$log1") || die ("Erreur d'ouverture de $log1, Erreur: $!\n") ;
print LOG1 "Le repertoire $file a ete modifie en $newdir \n a la date " .localtime(time) . "\n";
close LOG1;

}
print "NEW DIR ".$newdir."\n";
} elsif (-T ($file)) {
print "fisierul gasit ".$file."\n";
#for ( $i=0 ; $i<3 ; $i++) {
if ($file = ~/81/){
s/81/20/g ;
}
$file = $t;
print "file - ".$t."\n";
#rename ($file, "d:200\\log\\syndication\hanna.log");
#open(LOG2, ">>$log2") || die ("Erreur d'ouverture de $log2, Erreur: $!\n") ;
# print LOG2 "Le fichier $file a ete modifie en $newfile a la date " .localtime(time) . "\n";
#print "fisierul log2 a fost creat\n";
#close LOG2;
} else {
return;
}
}
}


Meilleures réponses pour « perl » dans :
Perl - Les fichiers Voir La notion de filehandle On appelle filehandle (traduisez descripteur de fichier), dans un programme Perl, le nom permettant de manipuler une connexion d'entrée-sortie (les entrées-sorties standards vues précédemment sont connues par les filehandles...
Perl - Entrée et sortie standards Voir Qu'appelle-t-on entrée standard et sortie standard ? Perl permet d'écrire sur la sortie standard, appelée STDOUT et de lire sur l'entrée standard (STDIN). Il s'agit de deux descripteurs fournis par le système d'exploitation et permettant...
Perl - Introduction Voir Histoire de Perl Perl (Practical Extraction and Report Language) est un langage de programmation dérivé des scripts shell, créé en 1986 par Larry Wall afin de mettre au point un système de News entre deux réseaux. Il s'agit d'un langage interprété...
Perl - Caractéristiques du langage VoirFichier source, et interprétation Le fichier source d'un programme écrit en Perl est un simple fichier texte dont l'extension est par convention .pl. Ce fichier source doit être un fichier texte non formatté, c'est-à-dire un fichier texte dans sa...
Les variables avec Perl VoirConcept de variable avec Perl Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage Perl peuvent être de trois...
Perl - Les fonctions VoirLa notion de fonction et de procédure On appelle procédure un sous-programme qui permet d'effectuer un ensemble d'instruction par simple appel de la procédure dans le corps du programme principal. Les procédure permettent d'exécuter dans plusieurs...