Bonjour,
La problématique :
Je dois trier des fichiers doublons qui portent parfois un nom identique et qui ne sont pas identiques par leur md5sum.
Ces fichiers sont sur un disque source et sur des disques cibles des sauvegardes
Actuellement (etape 1 à 4 réalisées, étape 5 et 6 en cours)
1) Je recherche des doublons sur un emplacement source
2) J’en retire un fichier résultat1 qui donne la liste des noms de fichiers et leur Md5sum.
3) Etape importante : J’en sélectionne et supprime les lignes des originaux que je ne veux pas supprimer. j’en obtiens un fichier resultat2
(Je supprime les doublons sur la source)
4) Je recherche sur chaque disque cible à partir du fichier résultat2 pour chacune de ses lignes les doublons. J’en obtient un fichier resultat3
Le fichier resultat3 rassemble des disques cibles (les noms des fichiers, l’inode et les Md5sum) des nomFichiers identiques à resultat2
5) Je fais un contrôle pour éliminer les lignes de ce fichier resultat3 pour ne garder que les lignes à Md5sum identiques aux nomfichiers de la liste resultat2 j’en obtiens un fichier resultat4
6)Je supprime pour chaque ligne de Resultat4 les fichiers sur les disques cibles (par leur inode)
Pourrait-on regrouper les étapes 4 5 (voire 6) en 1 seule commande
quel complément peut-on imaginer à ma commande qui crée le resultat3 pour le faire ?
find $CheminCibleSav "$anciennom" -type f -printf "%h*%f*%i*%s* %c* dernier accès le %AA %Ad %AB %AY à %AH:%AM:%AS* " -exec /usr/bin/md5sum -b {} \;| sort -n -t "*" -k 6| awk -F"*" '{ TMo=$3/1048576; printf $1" § "$2 " § " TMo " § " $4 " § " $5 " § " $6 "\n"; }' | tee -a "$CheminDossierJournal/CIBLE$FicResult$DateJ$HeureJ"
Merci pour votre participation