Hello,
Tout d'abord je vous préviens : venant du décisionnel je suis un très grand débutant en perl ! Un vrai noob
Donc je m'excuse par avance si jamais il existe déjà une solution clé en main (google n'est pas toujours mon ami ).
Et je vous explique mon problème :
Je voudrais faire un script qui supprime les fichiers en doublons.
En gros je donne un répertoire que je connais et qui est à jour, et je choisis d'autres répertoires où le programme va me donner les doublons parfaits ou presque. Bien sûr les critères peuvent varier, cela peut être la taille, la date, un CRC ou les métadonnées du fichier.
Voici comment je comptais faire :
- Scanner le répertoire de référence et lister les fichiers
- Créer un fichier A listant les fichiers, avec au début de chaque ligne la ou les clés de comparaison, puis les infos sur le fichier (répertoire+nom)
- Trier ce fichier A
- Créer un fichier B de la même façon pour les autres répertoires à comparer
- Parcourir les 2 fichiers en parallèle
- Si on a la même clé dans l'un et l'autre on traite le fichier trouvé dans B (suppression ou déplacement)
Vous en pensez quoi ?
Ne connaissant pas Perl je ne suis pas sûr que ce soit la meilleure méthode ; j'avoue avoir pris là un algo un peu passepartout qui ne prend pas forcément en compte les avantages et subtilités du langage.
Utiliser les tableaux ou tables de hachage ne me semble pas judicieux car la volumétrie peut être importante et les clés ne sont pas forcément uniques (sauf à faire des tables de tableaux).
Des conseils ?
Merci
A+
Doc
Partager