Confrontare due cartelle e unirle senza perdere dati

Aggiornato il:
Programmi per confrontare due cartelle, vedere le differenze, fonderle in una sola o sincronizzarle per averle uguali
Confrontare due cartelle

Abbiamo un hard disk esterno, una partizione di backup o una penna USB piena di cartelle con nomi simili. Magari una si chiama "Foto_Viaggio", l'altra "Foto_Viaggio_Backup" e una terza "Foto_Viaggio_Nuove". Sappiamo che dentro ci sono file identici, ma sospettiamo che in ognuna ci sia qualcosa di unico. Il problema nasce quando proviamo a mettere tutto insieme. Se trasciniamo una cartella sopra l'altra, il computer ci chiede se vogliamo "sostituire i file". Se diciamo di sì, rischiamo che un vecchio file cancelli quello aggiornato ieri solo perché hanno lo stesso nome. Se diciamo di no, ci ritroviamo con mille copie dello stesso documento. Fare ordine in questo caos senza cancellare nulla per sbaglio richiede gli strumenti giusti.

Sincronizzare o fondere: qual è la differenza

Prima di iniziare, bisogna capire cosa vogliamo ottenere, perché l'operazione cambia completamente. Se vogliamo che due cartelle restino sempre uguali (ad esempio una cartella sul PC e una copia su un disco esterno), l'operazione si chiama sincronizzazione. In questo caso, ogni file aggiunto, modificato o cancellato in una cartella verrà replicato automaticamente anche nell'altra.

Se invece abbiamo due archivi diversi e vogliamo creare un unico super-archivio che contenga tutto, l'operazione è la fusione. Qui l'obiettivo è unificare i dati in modo che, se un file è presente due volte, rimanga solo la versione più recente, eliminando i doppioni inutili. Il problema è che il sistema di spostamento di Windows non è molto intelligente: non capisce se due file con lo stesso nome siano effettivamente diversi nel contenuto o se uno sia semplicemente più aggiornato dell'altro.

Vedere le differenze prima di premere OK

Per non fare errori, la mossa più sicura è vedere esattamente cosa differisce tra la cartella A e la cartella B. Per questo lavoro esiste un programma gratuito, open source e in italiano chiamato WinMerge.

Il funzionamento è semplice: carichiamo i due percorsi e il software ci mostra l'elenco dei file. Quelli identici spariscono, mentre quelli diversi vengono colorati. La cosa più utile succede con i testi: se due documenti sono simili ma non uguali, WinMerge li apre fianco a fianco e ci evidenzia la riga esatta che è stata cambiata. È uno strumento fondamentale per confrontare differenze tra documenti di testo scritti con Word o altri programmi Office senza impazzire a cercare le modifiche a occhio.

Se per qualche motivo WinMerge non dovesse soddisfare le vostre esigenze, un'ottima alternativa multipiattaforma (che funziona anche su Linux) è Kdiff3, capace di confrontare directory, file e testi con una precisione millimetrica.

Fondere archivi giganti in automatico

Quando le cartelle sono troppo grandi per essere controllate a vista, serve un sistema automatico che non faccia errori. In questo caso il programma migliore è FreeFileSync, uno dei migliori programmi per sincronizzare file e cartelle tra computer.

Questo software scansiona le due directory e crea una mappa di ciò che deve essere spostato. Per non rischiare nulla, la rotta di Navigaweb suggerisce di non usare la sincronizzazione a specchio (che potrebbe cancellare file nella cartella di destinazione), ma di impostare la modalità Aggiornamento. In più, conviene attivare la funzione di versionamento: invece di sovrascrivere il file vecchio, il programma lo sposta in una cartella di sicurezza aggiungendo la data al nome. Così, se dopo l'unione ci accorgiamo che la versione precedente era in realtà quella giusta, possiamo recuperarla in un secondo.

Casi particolari: file sparsi e checksum

Esistono situazioni in cui i classici programmi di confronto non bastano. Ad esempio, se avete file sparsi in decine di sottocartelle e volete portarli tutti in un'unica cartella principale (magari per spostare la musica su uno smartphone senza trascinarvi dietro tutta la struttura delle cartelle), uno strumento come Folder Merger è l'ideale per "appiattire" la struttura e unificare tutto in un solo posto.

Per chi invece ha bisogno di una certezza assoluta, esiste il concetto di Checksum. È un codice univoco che identifica il contenuto di un file: se anche solo una virgola cambia nel documento, il codice cambia completamente. Programmi come Checksum Compare permettono di confrontare due cartelle basandosi su questo codice, garantendo che i file siano identici bit per bit, a prescindere dal nome o dalla data del file.

La soluzione per chi non può installare programmi

Se siamo su un computer dell'ufficio dove è vietato installare software, possiamo usare uno strumento già presente in Windows che però non ha finestre o pulsanti: si chiama Robocopy. Si usa scrivendo un comando nel Prompt dei comandi (quella finestra nera).

Digitando una stringa come robocopy "C:\Cartella1" "C:\Cartella2" /E /XO, diciamo al sistema di copiare tutto, incluse le sottocartelle, ma di saltare i file che sono più vecchi di quelli già presenti nella destinazione. È un metodo velocissimo e potentissimo, ma bisogna stare attentissimi a non sbagliare a scrivere i percorsi delle cartelle, perché non c'è un tasto "annulla" se mandiamo i dati nel posto sbagliato.

Cose da sapere per non fare pasticci

Unire i file sembra semplice, ma ci sono dei piccoli ostacoli che possono creare confusione durante l'operazione.

  • Il problema dei duplicati: Anche dopo aver fuso due cartelle correttamente, potremmo avere file identici con nomi diversi. In questo caso, l'unione non serve a nulla. Dopo aver fuso i dati, conviene usare un programma per cercare i duplicati basandosi sul contenuto del file e non sul nome.
  • Date sballate dai Cloud: Quando scarichiamo file da OneDrive o Google Drive, a volte la data di creazione diventa quella del giorno del download. I programmi di confronto potrebbero pensare che quel file sia "nuovo" e sovrascrivere l'originale. In questi casi, impostate il software per confrontare i file in base alla dimensione o al contenuto (hash) e non alla data.
  • Permessi di accesso: Se proviamo a unire cartelle che provengono da un altro utente o da un vecchio disco fisso, Windows potrebbe dirci che non abbiamo i permessi. In quel caso, bisogna cliccare col tasto destro sulla cartella, andare in Proprietà e prendere il "Possesso" della cartella per poter spostare i file.

diario di bordo di Navigaweb

Qualche anno fa ho fatto l'errore più stupido della mia carriera: ho trascinato una cartella di backup vecchia sopra quella aggiornata e ho cliccato "Sostituisci tutto" senza pensare. In tre secondi ho cancellato mesi di lavoro, sostituendo i file nuovi con versioni incomplete di mesi prima. Non avevo un backup aggiornato e ho passato due notti in bianco a cercare di ricostruire tutto. Da quel momento, ho smesso di fidarmi del copia-incolla di Windows. Usare un programma che vi mostra le differenze in giallo o rosso vi toglie l'ansia e vi salva il lavoro. Prendetevi cinque minuti per configurare un software di confronto: è l'unico modo per dormire tranquilli sapendo che nessun file è sparito nel nulla.