DedupeCopy este un simplu instrument multi-threaded de copiere a fișierelor proiectat pentru consolidarea și restructurarea sistemului de fișiere trântit.
Cel mai comun caz de utilizare este de backup de date într-un nou layout, ignorând fișiere duplicat.
Alte utilizări includ:
& Nbsp; 1. Noțiuni de bază un fișier .csv care descrie toate fișierele duplicat
& Nbsp; 2. Compararea diferitelor sisteme de fișiere
& Nbsp; 3. Restructurarea seturi existente de fișiere în diferite aspecte (cum ar fi sortate dupa extensie sau ultima dată modificare)
Acest instrument este * NU * o înlocuire Robocopy sau rsync și nu încearcă să umple rolul celor joc.
Ca toate cod care merge un copac fișier, vă rugăm să folosiți cu prudență și se așteaptă absolut nici o garanție!
Exemple de comandă:
& Nbsp; Generarea un raport fișier duplicat pentru o cale:
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; dedupe_copy.py -p / Utilizatori / -R dupes.csv -m vădită
& Nbsp; Copiați toate fișierele * .jpg din mai multe căi pentru o structură /YYYY_MM/*.jpg
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; dedupe_copy.py -p C: Imagini -p D: Imagini -e jpg-R jpg: mtime -c X: poze
& Nbsp; Copiați toate fișierele de la două unități într-o singură țintă, păstrând calea pentru
& Nbsp; toate extensiile:
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; dedupe_copy.py -p C: -p D: -c X: -m X: manifest -R *: no_change
& Nbsp; CV o centrare întrerupt (presupunând "-m manifest" utilizat în centrare anterior):
& Nbsp; & nbsp; & nbsp; dedupe_copy.py -p / Utilizatori / -R dupes_2.csv -i vădită -m vădită
Secvențial copiați surse diferite în aceeași țintă, nu copierea fișierelor duplicat (2 surse și 1-țintă):
& Nbsp; & nbsp; & nbsp; 1.) În primul rând înregistrare manifestă pentru toate dispozitivele
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; -p dedupe_copy.py \ țintă acțiune -m target_manifest
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; dedupe_copy.py -p \ Source1 acțiune -m source1_manifest
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; dedupe_copy.py -p \ source2 acțiune -m source2_manifest
& Nbsp; & nbsp; & nbsp; 2.) Copiați fiecare sursă la țintă (cu specificarea --compare așa manifeste de la
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; alte surse sunt încărcate, dar nu sunt utilizate ca parte a setului de a copia și
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; --no-de mers pe jos pentru a sări peste re-scanare a sursei):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; dedupe_copy.py -p \ Source1 social-c \ țintă acțiune source1_manifest -i
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; --compare source2_manifest --compare target_manifest & nbsp; --no-plimbare
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; dedupe_copy.py -p \ source2 social-c \ țintă acțiune source2_manifest -i
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; --compare source1_manifest --compare target_manifest --no-de mers pe jos
Exemplu complet:
& Nbsp; & nbsp; & nbsp;
& Nbsp; & nbsp; & nbsp; Presupunând că începe cu un set de fișiere stabilite după cum urmează:
& Nbsp; & nbsp; & nbsp; C:
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; poze
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; some_photos
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; photo1.jpg
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; photo2.jpg
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; photo3.jpg
& Nbsp; & nbsp; & nbsp; D:
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; poze
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; copied_photo
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; photo3.jpg
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; photo4.jpg
& Nbsp; & nbsp; & nbsp; Și tu rulați comanda:
& Nbsp; & nbsp; & nbsp; > Dedupe_copy.py -p C: Imagini -p D: Imagini -e jpg-R jpg: mtime -c X: pozele
Te-ar încheia cu următoarele (photo3.jpg a fost un duplicat adevărat):
& Nbsp; & nbsp; & nbsp; X:
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; fotografii
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 2012_08
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; photo1.jpg
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; photo2.jpg
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; photo3.jpg
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 2012_09
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; photo4.jpg
Acest proiect este pe BitBucket: http://www.bitbucket.org/othererik/dedupe_copy
Requirements:
- Python
Comentariile nu a fost găsit