Come confrontare i contenuti di due cartelle e sincronizzarli - Winhelponline

How Compare Contents Two Folders

Supponiamo che tu abbia eseguito un'attività di backup XCOPY, SyncToy o qualsiasi altro strumento per eseguire la copia speculare di una determinata directory in una posizione diversa. Se utilizzi Microsoft SyncToy soprattutto su Windows 10, è possibile che a volte i file o le cartelle manchino nella destinazione o che la cartella di destinazione abbia file o cartelle extra che non si trovano nella cartella di origine.



confronta due cartelle e un elenco di file



Questo articolo spiega come confrontare la struttura della directory (insieme ai file) in due diversi percorsi di directory per assicurarsi di avere una replica esatta o una copia speculare dell'origine. Alcuni dei metodi seguenti illustrano anche come sincronizzare gli elementi in due cartelle dopo il confronto.



Ci sono 13 metodi di confronto delle cartelle (per Windows) discussi in questo articolo. Scegli quello più adatto a te. Se è necessario controllare l'integrità del file dopo la sincronizzazione, utilizzare uno dei seguenti hash checksum procedure di verifica elencate.

Metodi per confrontare due cartelle:

Metodi GUI:



  1. Microsoft WinDiff
  2. WinMerge
  3. TotalCommander
  4. FreeFileSync
  5. SyncFolders
  6. DSincronizza
  7. Utilità HashMyFiles (confronto tra checksum hash)

Metodi della riga di comando:

  1. Robocopy
  2. Utilità FCIV (confronto hash checksum)
  3. PowerShell
  4. PowerShell (con confronto hash checksum)
  5. Elenca file e cartelle utilizzando il comando TREE e confrontali
  6. Elenca file e cartelle utilizzando il comando DIR e confrontali

Scelto dal redattore:

  • Per il confronto delle cartelle: WinDiff (grazie alla sua semplice interfaccia utente).
  • Per la sincronizzazione delle cartelle: FreeFileSync per GUI e Robocopy Metodo CLI.

Confronta il contenuto di due cartelle utilizzando WinDiff di Microsoft

WinDiff è uno strumento grafico di confronto di file di Microsoft che è stato rilasciato per la prima volta nel 1992 e successivamente aggiornato. Per favore resta in linea! Non lasciarti sorprendere dall'anno del rilascio iniziale.

WinDiff è ancora fantastico e funziona perfettamente in Windows 10, ma non supporta Unicode. Ha un potenziale enorme. WinDiff può confrontare file ASCII e binari, confrontare due directory e sincronizzare le cartelle (cartella sinistra → cartella destra, o viceversa).

Scarica WinDiff collegamento (specchio locale). L'ultima versione aggiornata di WinDiff è 5.2.3790.0 con il timbro Data di modifica che mostra 4-7-2016.

Puoi anche scaricare WinDiff come parte del pacchetto Strumenti di supporto di Windows XP ed estrarne il contenuto utilizzando 7-Zip.

Per eseguire un confronto di directory utilizzando WinDiff:

  1. Avvia Windiff.exe.
  2. Nel menu File, fare clic su Confronta directory.
  3. Nella finestra di dialogo Seleziona directory, digitare i due nomi di cartella che si desidera confrontare nelle caselle Dir1 e Dir2. Se vuoi confrontare i file in quelle cartelle in modo ricorsivo, abilita il file Includi sottodirectory casella di controllo.
    confronta il contenuto di due cartelle in Windows

I risultati o la finestra della struttura per impostazione predefinita mostrano file identici e le differenze. Puoi nascondere file identici disabilitando Mostra file identici dal menu Opzioni.

confronta il contenuto di due cartelle in Windows

Come puoi vedere, WinDiff non si limita a confrontare i nomi dei file, ma confronta anche il contenuto dei file in entrambe le posizioni ed evidenzia le modifiche se i contenuti dei file sono diversi.

confronta il contenuto di due cartelle in Windows

Facendo doppio clic sulla voce 'diverso' si apre la vista di confronto con codifica a colori. I risultati con codice colore indicano quali sono le differenze tra i file.

WinDiff può fare ASCII e confronto binario. Ciò significa che WinDiff non si basa sulla data di modifica ma confronta il contenuto effettivo dei file.

Ad esempio, ho modificato un carattere in un file di testo nella cartella di destinazione (cartella destra). Ho sostituito un punto esclamativo con due punti e la dimensione del file è esattamente la stessa (1.127 byte) in entrambe le posizioni. WinDiff lo ha raccolto e ha mostrato che i file sono diversi.

confronta il contenuto di due cartelle in Windows

Per salvare le differenze di confronto delle directory in un file, fare clic su Salva elenco file nel menu File. Digita un nome file con percorso completo senza virgolette doppie.

confronta il contenuto di due cartelle in Windows

Deseleziona File identici e Includi checksum opzioni e fare clic su OK. Il file di output sarà simile a questo:

- D:  Websites  Winhelponline  blog  wp-content  uploads  2019: E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019 - include solo sinistra, solo destra , file diversi.  accesschk.exe solo in E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019.  compare-folders.txt solo in E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019.  Fta-1803-w10.txt solo in E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019.  Ssh-commands-useful .txt solo in E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019.  05  dell-supportassist.png solo in D:  Websites  Winhelponline  blog  wp-content  uploads  2019.  05  disable-theme-sync-ramesh.png diverso (E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019 è più recente).  05  file-explorer- not-highlight-files.png solo in D:  Websites  Winhelponline  blog  wp-content  uploads  2019.  05  firefox-dimentica-di-questo-sito-4.png differe nt (E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019 è più recente).  05  msconfig-disable-services-non-microsoft.png solo in D:  Websites  Winhelponline  blog  wp-content  uploads  2019.  05  windows-store-error-0x800706d9.png solo in D:  Websites  Winhelponline  blog  wp-content  uploads  2019.  06  notepad-bing-search .png solo in E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019.  06  rundll32-refresh-commands.txt solo in E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019.  06  archives  404chk.vbs solo in E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019.  06  archives  actxprxy-missing -issues.txt solo in E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019.  06  archives  apps.png solo in E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019.  06  archives  articles.vbs solo in E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  upl oads  2019.  06  archives  bash-sh.vbs solo in E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019-17 file elencati

Poiché il file di output è in un formato delimitato da tabulazioni, dovresti essere in grado di importare in Microsoft Office Excel o Fogli Google facilmente.segnala questo annuncio

confronta il contenuto di due cartelle in Windows - windiff

Si noti che è possibile avviare WinDiff direttamente con i percorsi di origine e di destinazione come opzioni aggiuntive per il confronto delle directory. Ad esempio, il lancio di windiff.exe 'c: source' 'd: destinazione' avvierà lo strumento e confronterebbe immediatamente quei due percorsi di cartella.

Opzioni della riga di comando di WinDiff

Ecco l'elenco completo dei file Opzioni della riga di comando di WinDiff .

Utilizzo: windiff [opzioni] percorso1 [percorso2] Opzioni: -D Confronta solo una directory. -F [contrassegna] savefile Salva il file composito in 'savefile'. Le 'bandiere' possono essere costituite da una o più di I (identica), L (sinistra), R (destra), F (spostata a sinistra), G (spostata a destra), S (simile a sinistra), A (simile X (esci dopo aver salvato l'elenco). (es. -FLF salva l'elenco delle righe a sinistra o spostate a sinistra). -I file Legge l'elenco dei file da confrontare, dal file di input specificato. Ogni riga può contenere uno o due nomi di file, delimitati da spazi (con virgolette, se i nomi di file contengono spazi). Usa '-' come nome del file per leggere da stdin. Se una riga contiene un solo nome di file, il file viene confrontato con se stesso. -N nome NET INVIA notifica a 'nome' alla fine del confronto. -O Visualizzazione struttura (nessuna espansione automatica). -P Confronto perverso: interrompe le linee sulla punteggiatura. -S [flag] savefile Salva l'elenco dei file in 'savefile'. Le 'bandiere' possono essere costituite da una o più tra S (uguale), L (sinistra), R (destra), D (diversa), X (uscita dopo il salvataggio della lista). (es. -SLD salva l'elenco dei file Left o Diversi). -T Confronta l'intera sottostruttura.

Per salvare il rapporto di confronto in un file utilizzando l'estensione -S interruttore. Di seguito sono riportati alcuni esempi:

Salva l'elenco di file identici in diff.txt:

-SS D:  output  diff.txt c:  cartella1 d:  cartella2

Salva l'elenco dei diversi file in diff.txt:

-SD D:  output  diff.txt c:  cartella1 d:  cartella2

Salva l'elenco dei file di sola sinistra in diff.txt:

-SL D:  output  diff.txt c:  cartella1 d:  cartella2

Salva l'elenco dei file di sola destra in diff.txt:

-SR D:  output  diff.txt c:  cartella1 d:  cartella2

Salva l'elenco dei file solo a sinistra E solo a destra in diff.txt:

-SLR D:  output  diff.txt c:  cartella1 d:  cartella2

Per uscire automaticamente da WinDiff dopo aver salvato il rapporto di confronto, aggiungere il file X interruttore, come di seguito:

Salvare l'elenco dei file di sola destra in diff.txt e uscire da WinDiff

-SRX D:  output  diff.txt c:  cartella1 d:  cartella2

Salvare l'elenco dei file solo a sinistra E solo a destra in diff.txt e uscire da WinDiff

-SLRX D:  output  diff.txt c:  cartella1 d:  cartella2

Per generare tutti e 5 i singoli file di 'registro' è necessario eseguire WinDiff 5 volte.

Esempio:

windiff -SSX identico.txt c:  cartella1 d:  cartella2 windiff -SDX diverso.txt c:  cartella1 d:  cartella2 windiff -SLX solo sinistra.txt c:  cartella1 d:  cartella2 windiff -SRX solo destra .txt c:  cartella1 d:  cartella2 windiff -SLRX solo sinistra-destra.txt c:  cartella1 d:  cartella2

Guarda anche Contenuto del file della guida di WinDiff (windiff.hlp) in formato HTML.

Sincronizza le cartelle con WinDiff

Cosa c'è di più? WinDiff può anche copiare i file mancanti o diversi a sinistra (Cartella 1) oa destra (Cartella 2). Fare così,

  1. Dal menu File, seleziona Copia file
  2. Digita il percorso della cartella in cui desideri copiare i file mancanti / diversi.
    Importante: Non utilizzare virgolette doppie attorno al percorso della cartella anche se il percorso della cartella contiene spazi. WinDiff non riesce a copiare i file se si aggiungono virgolette doppie al percorso.
  3. Scegli Copia dalla posizione (albero sinistro su albero destro o viceversa)
  4. Deseleziona File identici e fare clic su OK.
    confronta il contenuto di due cartelle in WindowsWinDiff ora sincronizza la cartella copiando i file mancanti e modificati in modo ricorsivo nella posizione specificata (sinistra → destra). winmerge - logo

Nonostante l'eccellente confronto ASCII e binario e le capacità di sincronizzazione di base, WinDiff è spesso uno strumento sottovalutato tra gli IT. Questo perché presenta un'interfaccia utente obsoleta e non ha supporto Unicode. Ma WinDiff è sufficiente per la maggior parte di noi, specialmente per coloro che utilizzano il sistema operativo in lingua inglese.

Microsoft ha un articolo della knowledge base su WinDiff, intitolato Come utilizzare l'utilità Windiff.exe che potresti voler controllare.

Confronta il contenuto di due cartelle utilizzando WinMerge

Ecco come confrontare due cartelle con le sottocartelle, utilizzando WinMerge.

winmerge confronta 1a cartella 2a cartella aperta WinMerge è uno strumento di differenziazione e fusione Open Source per Windows. Può confrontare cartelle e file, presentando le differenze in un formato di testo visivo facile da capire e gestire. Usiamolo per confrontare il contenuto di due cartelle insieme alle loro sottocartelle (cioè, ricorsivamente).

  1. Avvia WinMerge. Dal menu File, fare clic su Aperto
    winmerge confronta i risultati main
  2. Sfoglia per selezionare il file 1a cartella e 2a cartella per il confronto.
  3. Assicurati che il filtro sia impostato su *. * in modo che tutti i file vengano confrontati. L'opzione 'Includi sottocartelle' (confronta ricorsivamente) è abilitata per impostazione predefinita. Se desideri confrontare i file solo nella directory di primo livello, deseleziona l'opzione.
  4. Clic Confrontare WinMerge genera i risultati del confronto delle cartelle, evidenziando le differenze di colore giallo.
    colonne winmerge
  5. Dal Utensili menu, fare clic su Personalizza colonne ... . Scegli le colonne che desideri, ad esempio Dimensione sinistra , Misura giusta , Data di sinistra , Appuntamento giusto dalle numerose altre opzioni di colonna fornite.
    Winmerge confronta i risultati espansi
  6. Espandi il ' Le cartelle sono diverse 'Facendo doppio clic su di essa. Mostra l'elenco dei file che sono diverso , ' lasciato solo ',' giusto solo 'E anche i file che sono identico .
    opzioni di visualizzazione winmerge
    Nota: Puoi scegliere di nascondere i file e le cartelle identici deselezionando 'Mostra elementi identici' dal menu Visualizza in WinMerge.
    winmerge confronta le cartelle e sincronizza

Il vantaggio dell'utilizzo di WinMerge è che offre cinque diversi metodi di confronto dei file tra cui scegliere:

  1. Contenuto completo (predefinito): Confronto completo dei file per contenuto, con tutti i campanelli e fischietti. Questo metodo richiama i plug-in e utilizza il motore Diffutils per una differenziazione completamente accurata e il rilevamento dei blocchi spostati. Questo è il metodo più completo e consigliato.
  2. Contenuti rapidi: Confronto semplificato dei file in base al contenuto. Questo metodo utilizza un codice di confronto file semplificato che ignora i plug-in e il rilevamento dei blocchi spostati. Questo metodo è più veloce di Full Contents, perché non carica i file. Il suo svantaggio è che i filtri di linea non vengono applicati durante il confronto. Ad esempio, questo metodo vede il file come diverso anche se i filtri di riga sono impostati per ignorare tutte le differenze nei file.
  3. Data modificata: Confronta solo le date di modifica sui file, quindi è molto più veloce di uno dei metodi di contenuto. Ma ovviamente è accurato solo quanto le date di modifica.
  4. Data e dimensioni modificate: Simile a Data di modifica, ma controlla anche le dimensioni dei file quando le date sono identiche.
  5. Taglia: Confronta solo le dimensioni dei file, quindi è veloce ma non preciso come il metodo dei contenuti.

WinMerge supporta molte opzioni della riga di comando. Controlla il Manuale di WinMerge per l'intero elenco di opzioni della riga di comando supportate.

Sincronizza le cartelle con WinMerge

Se hai deselezionato il file Mostra elementi identici dal menu Visualizza in WinMerge, mostra solo l'elenco dei file modificati, solo a sinistra e solo a destra. È facile sincronizzare gli elementi da sinistra a destra o viceversa.

winmerge confronta le cartelle e sincronizza

Tutto quello che devi fare è selezionare i file (o selezionarli tutti), fare clic con il pulsante destro del mouse sulla selezione e fare clic su Copia. Nel sottomenu Copia, scegli una delle opzioni:

  1. Da sinistra a destra: Copia i file selezionati dalla cartella sinistra a destra.
  2. Lasciato a …: Copia i file dalla cartella di sinistra a un'altra cartella.
  3. Da destra a sinistra: Copia i file selezionati dalla cartella di destra a sinistra.
  4. Giusto per … : Copia i file dalla cartella di destra a un'altra cartella.

icona freefilesync


Metodo 3: come confrontare i file in due cartelle utilizzando FreeFileSync

confronta il contenuto di due cartelle: freefilesync FreeFileSync è un software open source per il confronto e la sincronizzazione delle cartelle che crea e gestisce copie di backup di tutti i file importanti.

  1. Scarica FreeFileSync e installalo.
  2. Per confrontare le cartelle in base al contenuto del file anziché alla dimensione del file o alla data di modifica, scegliere Contenuto del file nelle opzioni di confronto. Confrontando per dimensione del file sarà però molto più veloce e dispendioso in termini di risorse.
  3. Seleziona la cartella a sinistra e la cartella a destra.
  4. Clicca sul Confronta (contenuto del file) pulsante. Confronta gli elementi nelle due cartelle in modo ricorsivo e mostra l'elenco dei file nuovi e modificati. confronta il contenuto di due cartelle: freefilesyncI file identici sono nascosti nell'output. Per impostazione predefinita, mostra i file solo a sinistra, file diversi e file solo a destra e le opzioni possono essere attivate utilizzando i pulsanti nella parte inferiore della finestra di FreeFileSync.

Sincronizza le cartelle utilizzando FreeFileSync

FreeFileSync offre le seguenti opzioni di sincronizzazione simili a Microsoft SyncToy.

confronta il contenuto di due cartelle: freefilesync

  1. Sincronizzazione bidirezionale: Identifica e applica le modifiche su entrambi i lati. Eliminazioni, spostamenti e conflitti vengono rilevati utilizzando un database.
  2. Specchio: Mirror is Left → Right sincronizzazione. La cartella di destra diventerà una copia speculare della cartella di sinistra. È lo stesso di Microsoft SyncToy Buttato fuori opzione e robocopy / me riga di comando. I file e le cartelle aggiuntivi nella cartella destra vengono rimossi e i diversi file vengono sostituiti.
  3. Aggiornare: Questa opzione di sincronizzazione esegue una sincronizzazione cartella sinistra → cartella destra simile al file Specchio opzione. Tuttavia, questa opzione non elimina i file e le cartelle aggiuntivi nella struttura delle cartelle a destra. È simile a Microsoft SyncToy Contribuire opzione.
  4. Personalizzato: Oltre alle tre opzioni preimpostate sopra, il file Personalizzato opzione ti consente di scegliere l'azione predefinita su come gestire un file di sola sinistra, un file modificato o il file di sola destra. Ad esempio, puoi configurarlo per eliminare file identici se il tuo requisito è di avere solo file univoci ( eliminare i duplicati ) nelle cartelle sinistra e destra. Nella maggior parte dei casi, non è necessario scegliere il Personalizzato a meno che tu non abbia un requisito speciale.

Per impostazione predefinita, esegue la sincronizzazione a 2 vie. Personalmente, preferisco il Specchio backup per i progetti del mio sito web e Aggiornare opzione di backup per i documenti. Scegli una delle opzioni di sincronizzazione di conseguenza.

Nei risultati del confronto, tutti i file sono selezionati per impostazione predefinita. È possibile escludere un file dalla sincronizzazione deselezionando la casella di controllo adiacente al nome del file o tramite il menu di scelta rapida.

confronta e sincronizza la cartella locale e l'ftp usando freefillesync

  • Per sincronizzare tutti gli elementi visualizzati nell'elenco, fare clic su Sincronizzare pulsante in alto.
  • Per sincronizzare un particolare file o un insieme di file, Escludi tutti gli elementi (temporaneamente) tramite il menu di scelta rapida, quindi abilita la casella di controllo per i file selezionati, fai clic con il tasto destro sulla selezione e fai clic su Sincronizza la selezione e fare clic su Inizio .

Questo è tutto! Le tue cartelle sono ora sincronizzate e le operazioni di copia / aggiornamento / eliminazione vengono registrate da FreeFileSync.

confronta e sincronizza la cartella locale e l'ftp usando freefillesync

Confronta e sincronizza una cartella locale vs. Cartella FTP in modo ricorsivo

FreeFileSync può anche confrontare una cartella locale con Google Drive o una cartella locale con una cartella del tuo server FTP in modo ricorsivo utilizzando una connessione FTP o SFTP. Ecco come confrontare e sincronizzare una cartella locale e sottocartelle con una cartella sul tuo server FTP.

Tutto quello che devi fare è fare clic sul file Accedi allo spazio di archiviazione online accanto al pulsante Sfoglia nel riquadro sinistro o sul lato destro. Facendo clic su quel pulsante si apre la seguente finestra di dialogo:

confronta il contenuto di due cartelle: freefilesync

Immettere le informazioni sulla connessione FTP o SFTP, le credenziali e il percorso della directory FTP da confrontare con la cartella locale.

Una volta terminato, sei tornato alla finestra di confronto.

Cosa Dimensione del file o Tempo e dimensione del file metodo di confronto. Quest'ultimo metodo di confronto è più affidabile.

Seleziona la variante di sincronizzazione. Ho impostato il mio su Sincronizzazione a 2 vie (invece di Specchio ) per questo scopo.

Una volta configurato, fai clic su Confronta. Vedrai l'elenco dei file mancanti e diversi sulla cartella sinistra e quella destra.

confronta il contenuto di due cartelle: freefilesync

Clicca sul Sincronizzare pulsante per copiare i file in entrambe le direzioni, poiché è stata selezionata la sincronizzazione a 2 vie. Se desideri aggiornare solo la posizione FTP, scegli Specchio sincronizza invece.

Esegui FreeFileSync come processo batch | Sincronizzazione dalla riga di comando

È possibile salvare la configurazione di cui sopra in un processo batch ed eseguirlo tramite riga di comando o Scheduler. Per salvare la configurazione ed eseguirla utilizzando la riga di comando, segui questi passaggi:

  1. Clic Salva come lavoro batch ... opzione dal menu File.
    icona dell'utility syncfolders
  2. È possibile configurare il processo batch per l'esecuzione ridotto a icona e chiudere automaticamente la finestra al termine della sincronizzazione.
    syncfolders - confronta e sincronizza i file
  3. Salva il file del lavoro batch in una cartella di tua scelta, ad esempio d: BatchRun.ffs_batch
  4. Quindi, per sincronizzare le cartelle utilizzando la riga di comando, utilizzare la seguente sintassi della riga di comando:
    C:  Programmi  FreeFileSync  FreeFileSync.exe d:  BatchRun.ffs_batch

    È possibile creare un file batch di Windows o eseguire il comando precedente tramite l'utilità di pianificazione a intervalli periodici come desiderato.

Mancia: FreeFileSync può anche sincronizzare le cartelle con Google Drive.


Metodo 4: come confrontare i file in due cartelle utilizzando SyncFolders

syncfolders - confronta e sincronizza i file

SyncFolders è un'altra potente utilità di confronto e sincronizzazione di file che funziona su tutte le versioni di Windows, incluso Windows 10. Il programma consente di copiare facilmente file e cartelle nuovi e aggiornati in una o entrambe le direzioni. Puoi anche fare un backup mirror (equivalente a Robocopy / MIR o SyncToy's Buttato fuori caratteristica.)

syncfolders - confronta e sincronizza i file

Dalla dashboard di SyncFolders, fai clic sul pulsante Crea regola ...

Indica le cartelle di origine e di destinazione e il tipo di azione (metodo di backup) che desideri creare.

syncfolders - confronta e sincronizza i file

  • Copia: I file nuovi e modificati nella cartella di origine verranno copiati nella cartella di destinazione. Nota che se scegli questa opzione, i file o le cartelle extra nella cartella di destinazione non verranno eliminati.
  • Backup: Crea una copia speculare della cartella di origine. I file nuovi e modificati nella cartella di origine verranno copiati nella cartella di destinazione. È un metodo di sincronizzazione Sinistra → Destra. I file e le cartelle extra (orfani) nella posizione di destinazione verranno eliminati. A tale scopo, l'utilità SyncFolders crea un database per tenere traccia delle aggiunte o eliminazioni di file e cartelle.
  • Sincronizza bidirezionale: I file nuovi e modificati verranno copiati dalla cartella di origine alla cartella di destinazione e viceversa. SyncFolders creerà un database durante la prima sincronizzazione per identificare e tenere traccia di aggiunte, modifiche ed eliminazioni in entrambe le cartelle.

Curiosità: Altri strumenti di sincronizzazione (ad esempio FreeFileSync) utilizzano il confronto del database solo per la sincronizzazione a 2 vie. Ma SyncFolders utilizza il confronto del database anche per la sincronizzazione del mirror sinistro → destro. Il file di database è denominato Syncfolders_Database_db archiviato nell'origine e nel percorso di destinazione per ogni coppia di cartelle.

Nota: Se desideri eseguire il backup in mirroring della cartella di origine, scegli il file Torna indietro opzione. Questa opzione è equivalente a quella di Robocopy opzione specchio o la funzionalità Echo di Microsoft SyncToy o FreeFileSync Specchio opzione.

Ecco le configurazione schermate dell'utilità SyncFolders:

syncfolders - confronta e sincronizza i file

Nello screenshot qui sopra, puoi vedere l'opzione denominata Verifica i risultati della sincronizzazione tramite hashing (CRC32 o MD5 o SHA-1). Se questa opzione è abilitata, dopo l'operazione di copia / sincronizzazione, SyncFolders calcolerà l'hash del file di origine e del file di destinazione e confronta se l'operazione è andata a buon fine. La verifica dell'hash è un'attività che richiede molte risorse, soprattutto quando sono coinvolti file di grandi dimensioni.

syncfolders - confronta e sincronizza i file

syncfolders - confronta e sincronizza i file

Si noti che è anche possibile confrontare i file in base al contenuto, nel qual caso l'utilità potrebbe eseguire un confronto binario (confronto byte per byte). Questo può consumare più risorse della CPU e deve essere utilizzato solo quando necessario.

syncfolders - confronta e sincronizza i file

Confronta le cartelle utilizzando SyncFiles

Dalla finestra principale o dalla scheda di elaborazione, fare clic su Scansione pulsante per visualizzare le statistiche.

Mostra il numero di file e cartelle da sincronizzare, la dimensione totale, i file e le cartelle orfani da eliminare (nella posizione di destinazione) e altri dettagli.

syncfolders - confronta e sincronizza file - utilità di pianificazione

Per visualizzare l'elenco di file e cartelle, aprire la finestra di confronto facendo clic su Dettagli… pulsante.

Nella finestra di confronto, puoi vedere l'elenco degli elementi nuovi o modificati che verranno copiati. Vedrai anche i file extra nella cartella di destinazione che verranno eliminati durante l'operazione di sincronizzazione.

comandante totale - logo

Per modificare l ''azione' per un file o una cartella specifica, fare clic con il pulsante destro del mouse su di esso e scegliere l'opzione richiesta. Ad esempio, potresti voler fare una di queste cose per un articolo:

  • Crea file nella destinazione (impostazione predefinita)
  • Elimina file dall'origine
  • Nessuna azione

Sincronizza le cartelle utilizzando SyncFiles

È possibile sincronizzare le cartelle tramite la finestra principale (scheda Regole o scheda Elaborazione) o dalla finestra di confronto in alto.

Facendo clic sul file Sincronizzare il pulsante è tutto ciò che devi fare. I risultati vengono visualizzati nella scheda Elaborazione e registrati in un file denominato SyncFolders.log. Per visualizzare il registro, fare clic sulla freccia accanto al pulsante dell'ingranaggio nella barra degli strumenti e selezionare Visualizza file di registro .

Vedrai qualcosa di simile nel file di registro:

 

Attività pianificate e utilizzo della riga di comando

È possibile pianificare facilmente l'attività di sincronizzazione utilizzando SyncFolders.

  • Innanzitutto, assicurati di salvare le regole correnti in un file di regole, ad es. MyRules.rls . Tieni presente che un singolo file di regole può avere più di un set di cartelle.
  • Fare clic sull'icona dell'attività pianificata nella barra degli strumenti e configurare l'attività. Crea una nuova attività (utilizza l'utilità di pianificazione di Windows) in base alle opzioni scelte.

confronta il contenuto di due cartelle: total commander

Ecco la sintassi della riga di comando che utilizza per sincronizzare le cartelle (utilizzando un file di regole personalizzate) in modo non interattivo utilizzando l'Utilità di pianificazione.

SyncFolders.exe 'unità:  path  My Rules.rls' / background / synchronize

Se non desideri creare un'attività pianificata, puoi creare un collegamento sul desktop per il comando precedente per sincronizzare manualmente le cartelle.

SyncFolders è sicuramente un software impressionante! È portatile e ha un'interfaccia utente semplice e pulita. Le opzioni di filtro in questo strumento sono molto utili. La finestra di confronto è quella che necessita di miglioramenti, però. È utile per sincronizzare le attività e può essere una buona alternativa per Microsoft SyncToy obsoleto.


Metodo 5: come confrontare i file in due cartelle utilizzando TotalCommander

confronta il contenuto di due cartelle: total commander Comandante totale è un file manager per Windows che ti consente di copiare, spostare o eliminare file. Total Commander può fare molto di più. Può comprimere e decomprimere file, accedere a server FTP, confrontare file in base al contenuto, ecc.

confronta il contenuto di due cartelle: total commander

  1. Avvia Total Commander e seleziona la cartella a sinistra e la cartella a destra da confrontare.
  2. Dal Comandi menu, fare clic su Sincronizza directory ... Con il Sincronizza directory finestra di dialogo, è possibile confrontare tra loro due directory comprese le sottodirectory, quindi copiare i file con le differenze nella directory di destinazione o in qualsiasi altra directory.
    confronta il contenuto di due cartelle: total commanderSe scegli il file Asimmetrico opzione, rende la cartella destra uno specchio della sinistra - simile a RoboCopy / MIR riga di comando o Microsoft SyncToy Buttato fuori opzione. Cioè, l'opzione copia i file mancanti o diversi nella cartella giusta e tutti i file e le cartelle extra a destra vengono eliminati. Puoi scegliere di mostrare file identici o solo i diversi file nell'output. confronta il contenuto di due cartelle: total commanderLe opzioni di confronto / sincronizzazione di Total Commander spiegate di seguito.
    Asimmetrico Se questa opzione è selezionata, si presume che una copia del lato sinistro debba essere creata sul lato destro. I file che non esistono sul lato sinistro verranno contrassegnati per l'eliminazione sul lato destro. Questa opzione è pensata per i backup.
    Sottocartelle Confronta anche le sottodirectory delle due directory scelte.
    per contenuto Confronta il contenuto di file che hanno la stessa dimensione e data. Verifica che anche i file abbiano lo stesso contenuto.
  3. Seleziona le opzioni di confronto 'Sottodirectory', 'per contenuto'. Importante: Se la ignora la data la casella di controllo è abilitata, Total Commander non riesce a trovare i file diversi / modificati anche se le dimensioni dei file sono diverse. It sembra essere un bug in Total Commander, e posso riprodurlo ogni volta.
  4. Nella sezione Mostra, disabilita File uguali (indicato dal = simbolo) e abilitare gli altri tre pulsanti.
  5. Abilita il Single e Duplicati opzioni.
  6. premi il Confrontare pulsante
    sincronizzare le cartelle in tempo reale

Total Commander: la cartella confronta gli argomenti della riga di comando

Per avviare 'Sincronizza directory', puoi utilizzare la seguente sintassi della riga di comando:

TOTALCMD64.EXE / S = S d:  cartella_1 d:  cartella_2

Quindi, configurare le opzioni e premere il pulsante Confrontare pulsante.

Per avviare 'Sincronizza directory' e confrontare le cartelle al momento , usa questa sintassi:

TOTALCMD64.EXE / S = S: = d:  cartella_1 d:  cartella_2

(il confronto inizierà con le directory passate e le ultime opzioni utilizzate.)

Facoltativamente, puoi anche digitare un nome per le impostazioni nel modulo / S = S: SettingsName in modo che il confronto inizi immediatamente in base all'impostazione salvata in precedenza.

Sincronizza le cartelle utilizzando TotalCommander

  1. Nella finestra di confronto, seleziona i file che desideri copiare. Questo viene fatto facendo clic sulla casella di controllo tra le due colonne di confronto o selezionando una delle opzioni nel menu di scelta rapida. Per impostazione predefinita, la funzione selezionerà tutti i file più recenti per la copia. Per deselezionare un file e impedire che venga copiato o sincronizzato, fare doppio clic sulla freccia. Per deselezionare più file, selezionare i file, fare clic con il pulsante destro del mouse sugli elementi e scegliere Rimuovi selezione Importante: Se la Asimmetrico l'opzione non è abilitata, se un file nella cartella di destra è più recente di quello nella cartella di sinistra, la sincronizzazione verrà eseguita da Destra → Sinistra per quel file. Per cambiarlo nell'altro modo, fare clic sulla freccia accanto al file, che alterna la direzione di sincronizzazione.

    sincronizzare le cartelle in tempo reale - dsync In alternativa, puoi fare clic con il pulsante destro del mouse sul file e scegliere Invertire la direzione della copia per cambiare la direzione di sincronizzazione.

  2. Clicca su Sincronizzare . Si aprirà una finestra di dialogo per copiare i file selezionati.
    sincronizzare le cartelle in tempo reale - dsyncPer impostazione predefinita, si sincronizza in entrambi i modi. Se desideri eseguire la sincronizzazione in un modo, ad es. Cartella sinistra → cartella destra, deseleziona il file Da destra a sinistra casella di controllo e viceversa.

Mancia: Utilizzando Total Commander, puoi persino sincronizzare una directory locale e una directory su un server FTP.


Metodo 6: confronta e sincronizza le cartelle in tempo reale utilizzando DSynchronize

sincronizzare le cartelle in tempo reale - dsync DSincronizza è un simpatico strumento con cui puoi sincronizzare due cartelle manualmente o automaticamente in tempo reale. Questo strumento fornisce molte opzioni rispetto a qualsiasi altro strumento di sincronizzazione delle cartelle per configurare la modalità di sincronizzazione dei file.

  1. Avvia DSynchronize e configura le cartelle di origine e di destinazione.
  2. È possibile assegnare un nome lavoro personalizzato (per automazione successiva) facendo clic sul pulsante LAVORI. Impostiamo il nome del lavoro come Caricamenti
  3. Per la sincronizzazione mirror, assicurati che la sincronizzazione bidirezionale sia disabilitata.
  4. Per fare un confronto (solo) senza sincronizzare le due cartelle, abilitare l'opzione Anteprima sincronizzazione nella sezione Generale.
    sincronizzare le cartelle in tempo reale - dsync
  5. Fare clic sul pulsante Sincronizza per visualizzare l'elenco dei file nuovi, aggiornati e mancanti in entrambe le posizioni.

Sincronizza le cartelle

Per sincronizzare le cartelle, deseleziona il file Anteprima sincronizzazione opzione sotto generale sezione e fare clic su Sincronizzare . Per impostazione predefinita esegue una sincronizzazione in modalità Mirror. La modalità mirror è stata discussa in questo articolo in precedenza. La modalità Mirror garantisce che la cartella di destra sia esattamente la stessa della cartella di sinistra. Eventuali directory e file aggiuntivi nella destinazione vengono rimossi automaticamente.

Sincronizzazione in tempo reale

Per sincronizzare due cartelle in tempo reale:

  1. Clicca sul Sincronizzazione in tempo reale nella sezione Timer.
  2. Configurare le impostazioni di sincronizzazione in tempo reale come desiderato. Ho usato le impostazioni predefinite.
    sincronizzare le cartelle in tempo reale - dsync
    Per impostazione predefinita, sincronizza automaticamente le cartelle dopo un intervallo di 10 secondi. È possibile configurarlo per differire ulteriormente o pianificarlo per l'esecuzione a intervalli specificati.
  3. Abilita il Monitorare le sottocartelle casella di controllo per sincronizzare le cartelle ricorsivamente .

Ho copiato alcuni file nella cartella di sinistra (sorgente) ed entro 10 secondi gli elementi sono stati sincronizzati automaticamente nella cartella di destra. Puoi vederlo in questa GIF animata:

ottenere l'hash del file tramite il menu di scelta rapida - hashmyfiles

Inoltre, le modifiche (aggiunte ed eliminazioni di file o cartelle) vengono registrate nella finestra principale.

confronta i file in due cartelle: hashmyfiles

Quando la sincronizzazione in tempo reale è abilitata, monitora le modifiche ai file e il programma si trova nell'area di notifica in attesa di modifiche. Non richiede molte risorse della CPU o memoria. L'ultima volta che ho controllato, utilizzava solo circa 10 MB di memoria.

confronta i file in due cartelle: hashmyfiles

Ecco l'elenco delle caratteristiche salienti di DSynchronize:

  • Sincronizzazione standard e con timer.
  • Sincronizzazione in tempo reale.
  • Sincronizzazione bidirezionale.
  • Sincronizzazione transazionale (dal giornale di NTFS).
  • Filtro selettivo (puoi escludere singoli file o cartelle).
  • Inizia come servizio (il programma non richiede l'accesso).
  • Supporta collegamenti simbolici e collegamenti fisici.
  • Supporta giunzioni e punti di montaggio.
  • Supporta ACL.
  • Registro inviato tramite e-mail.
  • Backup della versione precedente dei file sostituiti.
  • Byte a byte confrontare.
  • Supporta più lavori, ciascuno con le sue impostazioni e percorsi di sincronizzazione.
  • Minimo consumo di risorse (RAM e CPU).

Supporto della riga di comando

È possibile utilizzare la seguente riga di comando per automatizzare DSynchronize:

/INIZIO = Avvia la sincronizzazione con le ultime opzioni salvate.
/ STARTJOB 'JobName' = Avvia sincronizzazione con le opzioni di lavoro selezionate).
/MINIMIZZARE = Inizia minimizzato nella Tray Bar.
/NASCOSTO = Non visualizzare l'icona nella Tray Bar.
/ NOSECURITYCHECK = Non eseguire un controllo di sicurezza prima della sincronizzazione.
/ NOMONITORCHECK = Non controllare la risoluzione del monitor.
/ AUTOREALTIME = Avvia ridotto a icona, esegue una sincronizzazione standard e attiva RealTime.
/SOMEFILE.INI = Inizia utilizzando il file INI selezionato.

Il nome del lavoro può essere personalizzato facendo clic su LAVORI pulsante nella parte superiore della finestra principale del programma.

Ad esempio, per sincronizzare automaticamente due cartelle (lavoro salvato in precedenza denominato 'Caricamenti'), ho eseguito questo comando:

'D:  dsynchronize  DSynchronize.exe' / STARTJOB 'Uploads' / MINIMIZE

Per sincronizzare le due cartelle (processo denominato 'Uploads) e attivare la sincronizzazione in tempo reale, eseguire:

'D:  dsynchronize  DSynchronize.exe' / STARTJOB 'Uploads' / AUTOREALTIME

Il comando precedente sincronizza le due cartelle denominate nel lavoro e attiva automaticamente il monitoraggio in tempo reale. Puoi vedere l'icona del monitoraggio in tempo reale nell'area di notifica.

Questo è tutto!


Metodo 7: Confronta due cartelle con l'utilità HashMyFiles utilizzando File Hash Checksum

HashMyFiles è una piccola utility che calcola i checksum hash per i tuoi file. Può calcolare l'hash per i file in una cartella e nelle sue sottocartelle in modo ricorsivo. HashMyFiles ti consente di salvare i risultati in un file. Può anche calcolare il checksum hash tramite menu di scelta rapida .

confronta i file in due cartelle: hashmyfiles

Se PowerShell non è la tua tazza di tè, usa il HashMyFiles utility di Nirsoft.net per confrontare gli hash dei file.

È possibile salvare i nomi dei file e l'output hash corrispondente per l'albero delle cartelle di origine in source.txt . Allo stesso modo, salvare le voci per l'albero delle cartelle di destinazione come destination.txt .

In questo esempio, confronteremo i file nelle seguenti cartelle:

D:  Websites  Winhelponline  blog  wp-content  uploads  2019 E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019

Segui questi passi per generare hash di file utilizzando HashMyFiles e confrontarli:

  1. Scarica HashMyFiles ed eseguilo.
  2. Dal menu Opzioni, fai clic su Tipi di hash e seleziona SHA-256
    confronta i file in due cartelle: hashmyfiles
  3. Dal menu Visualizza, fare clic su Scegli Colonne
    confronta i file in due cartelle: hashmyfiles
  4. Nelle Impostazioni colonna, abilita le opzioni SHA-256 , Percorso completo , e Dimensione del file . Fare clic su OK.
  5. Fare clic sul menu File e selezionare Aggiungi cartella
  6. Seleziona la cartella di origine per il confronto.
    cartelle delle differenze dell'elenco dei comandi robocopy
  7. Fare clic per selezionare Aggiungi file nelle sottocartelle e fare clic su OK.
  8. Ordina i risultati per Percorso completo colonna e seleziona tutte le voci.
  9. Dal menu File, fare clic su Salva gli elementi selezionati
  10. Salva l'elenco in un file denominato source.txt
  11. Cancella i risultati selezionando Cancella tutto dal menu File.
  12. Ripeti i passaggi precedenti e questa volta seleziona la cartella di destinazione, salva l'elenco in destination.txt
  13. Ora modifica i file source.txt e destination.txt utilizzando Blocco note e rimuovere i percorsi di base. Utilizzando l'opzione Trova nel Blocco note, trova ogni occorrenza del percorso di base di seguito e sostituiscilo con una stringa vuota.
    D:  Websites  Winhelponline  blog  wp-content 
  14. Allo stesso modo in destination.txt file, rimuovi questo percorso di base:
    E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content 

    Potrebbe piacerti anche trovare e rimuovere il file = simboli usati come separatori.

    Ecco come appaiono i file ora:

    file di registro robocopy elenco differenze cartelle

  15. Ora, accendi WinDiff o il tuo strumento di confronto dei file preferito per vedere le differenze.
    confronta il contenuto di due cartelle - robocopy sync mir

Vedrai l'elenco di file diversi, file aggiuntivi e file mancanti.


Metodo 8: come confrontare i file in due cartelle utilizzando Robocopy

Vediamo ora come utilizzare il built-in Robocopy utilità della console per confrontare il contenuto di due cartelle.

Robocopy ('Robust File Copy for Windows') è un eccellente strumento di copia di file integrato in Windows che ha enormi capacità. Le capacità di Robocopy sono al di sopra e al di là della copia integrata di Windows e dei comandi XCopy. RoboCopy è il più preferibile di tutti i metodi della riga di comando perché Robocopy confronta non solo i nomi dei file ma anche l'ora dell'ultima modifica. Riporta l'elenco dei file modificati e dei nuovi file / cartelle nei percorsi di origine e di destinazione.

Tra le sue eccellenti caratteristiche vi è la copia in modalità 'mirror' (simile a Microsoft SyncToy ' Buttato fuori 'Opzione), possibilità di riprovare a copiare in caso di interruzioni di rete, copia multi-thread, ecc. Oltre a copiare file, possiamo usare Robocopy per confrontare semplicemente il contenuto di due cartelle (ricorsivamente) e registrare le differenze senza copiare nulla, come un funzionamento a secco .

Scenario

I file del mio sito web vengono sincronizzati su un disco rigido esterno ( E: ) regolarmente. A scopo illustrativo, controlliamo se queste due cartelle sono identiche. In questo esempio, confronteremo le seguenti cartelle, in modo ricorsivo (cioè insieme alle sottocartelle, un confronto approfondito):

D:  Websites  Winhelponline  blog  wp-content  uploads e E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads
  1. Apri una finestra del prompt dei comandi.
  2. Eseguire il comando seguente e premere INVIO:
    robocopy 'D:  Websites  Winhelponline  blog  wp-content  uploads' 'E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads' / L / TS / MIR / LOG: D:  Diff.txt

    confronta il contenuto di due cartelle - robocopy sync mir

    I risultati del comando precedente vengono registrati in D: Diff.txt file.

  3. Esci dalla finestra del prompt dei comandi.

Dettagli sulle opzioni della riga di comando Robocopy utilizzate

  • /L :: Solo elenco: non copiare, timestamp o eliminare alcun file. Questa opzione viene utilizzata per scopi di registrazione solo per un funzionamento a secco.
  • /ME :: MIRror a un albero di directory (equivalente a / E plus / PURGE). Dato che lo stiamo usando con /L switch, nessun file / cartella verrà effettivamente copiato.
  • / TS :: include i timestamp del file di origine nell'output.
  • / LOG: file :: invia lo stato al file LOG (sovrascrive il log esistente).

In questo esempio, stiamo scrivendo l'output in D: Diff.txt . Ecco come appare il registro:

 -------------------------------------------------- ----------------------------- ROBOCOPY :: Copia file robusta per Windows ------------- -------------------------------------------------- ---------------- Iniziato: lunedì 8 aprile 2019 17:06:10 Fonte: D:  Websites  Winhelponline  blog  wp-content  uploads  Dest: E :  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  Files: *. * Opzioni: *. * / TS / L / S / E / DCOPY: DA / COPY: DAT / PURGE / MIR / R: 1000000 / W: 30 ------------------------------------------- ----------------------------------- 583 D:  Websites  Winhelponline  blog  wp-content  uploads  * EXTRA Dir -1 E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019  videos  * EXTRA File 821886 2019/04/07 07:19:24 tiktok-superman-dance. mp4 3 D:  Websites  Winhelponline  blog  wp-content  uploads  2019  Scripts  Older 210 2019/04/08 10:54:59 0x80071A91.vbs Newer 211 2019/04/08 11:35:32 ErrCodeFinder. vbs Nuovo file 211 2019/04/08 11:35:32 Sample.vbs 211 D:  Websites  Winhelpon line  blog  wp-content  uploads  h1-10  83 D:  Websites  Winhelponline  blog  wp-content  uploads  h1-11  1 D:  Websites  Winhelponline  blog  wp-content  uploads  reg  9 D:  Websites  Winhelponline  blog  wp-content  uploads  temp  ------------------------------ ------------------------------------------------ Totale copiato Mancata corrispondenza ignorata FAILED Extra Dirs: 113 0113 0 0 1 File: 4125 3 4122 0 0 1 Byte: 59,96 m 632 59,95 m 0 0802,6 k Volte: 0:00:00 0:00:00 0:00:00 0: 00:00 Terminato: lunedì 8 aprile 2019 17:06:10 

È possibile vedere chiaramente le directory e i file aggiuntivi nella sorgente e nelle cartelle di destinazione. Inoltre, confronta il timestamp e ti dice se i file sono più vecchi o più recenti (rispetto allo stesso file nella tua destinazione).

confronta il contenuto di due cartelle - robocopy sync mir

In questo esempio, ecco le differenze rilevate:

  1. * EXTRA Dir : Esiste una directory aggiuntiva nella destinazione ma non nell'origine.
  2. * File EXTRA : Esiste un file aggiuntivo nella destinazione ma non nell'origine.
  3. Più vecchio : Questo file è più vecchio rispetto a quello nella destinazione.
  4. Più nuovo : Questo file è più recente rispetto a quello nella destinazione.
  5. Nuovo file : Questa vita non esiste nella destinazione. È anche chiamato Solitario file

Elenco completo delle classificazioni dei file RoboCopy:

----------- ----------- ---------------- ------------ --- ------------- ------------ Classifi_ Esiste in Esiste in Sorgente / Dest Origine / Dest Origine / Destinazione Origine Destinazione File Volte Dimensioni file Attributi ----------- ----------- ---------------- ------------ --- ------------- ------------ Più recenti Sì Sì Src> dest n / an / a Più vecchi Sì Sì Src 

Nota: PER Ottimizzato file è definito come uno che esiste sia nell'origine che nella destinazione, con dimensioni e timestamp identici, ma impostazioni di attributi diverse.

Robocopy è uno strumento straordinario per confrontare e sincronizzare i file in due cartelle (insieme a sottocartelle di diversi livelli) ed elencare le differenze in un file di registro.

Sincronizza le cartelle usando Robocopy

Per sincronizzare le cartelle ( solo dalla cartella sinistra → destra) con RoboCopy, usa la stessa sintassi della riga di comando che abbiamo usato in precedenza per confrontare le cartelle, ma questa volta senza il /L (solo elenco).

RoboCopy esegue una sincronizzazione unidirezionale (dalla cartella sinistra → destra)

La modalità Copia speculare di RoboCopy ( /ME ) è simile a Microsoft SyncToy 'S ' Buttato fuori 'Caratteristica. Ricorda, RoboCopy esegue solo la sincronizzazione sinistra → destra - NON una sincronizzazione a due vie.

Suo importante da notare che il /ME interruttore anche rimuove eventuali file e directory aggiuntivi nella struttura delle cartelle di destinazione. I file / cartelle “Extra” sono elementi presenti nella destinazione ma non presenti nel percorso sorgente. Il /ME Il comando (mirror) si assicura che la struttura della cartella di destinazione (e dei file) sia una copia esatta dell'origine.

Utilizzare la seguente sintassi della riga di comando per sincronizzare gli elementi dalla cartella sinistra → destra:

robocopy cartella_origine cartella_destinazione / MIR / MT

Il / MT switch è fare una copia multi-thread per un'operazione di copia super veloce. È un interruttore opzionale, ma estremamente utile.

Lo stato di sincronizzazione viene emesso nella console per ogni elemento elaborato e le statistiche vengono visualizzate alla fine dell'output.

Per registrare l'output in un file, utilizzare questa sintassi:

robocopy cartella_origine cartella_destinazione / MIR / MT / TS /LOG:D:Diff.txt

confronta il contenuto della cartella - checksum fciv

confronta il contenuto della cartella - checksum fciv

Automatizza i comandi utilizzando un file batch

Puoi aggiungere tutti i comandi Robocopy a Blocco note e salvarlo come file Batch di Windows (con estensione .uno estensione). È sufficiente fare doppio clic sul file Batch ogni volta che si desidera sincronizzare le cartelle menzionate. È anche possibile eseguire il file batch agli intervalli richiesti utilizzando l'Utilità di pianificazione.

confronta il contenuto della cartella - checksum fciv


Metodo 9: confrontare due cartelle utilizzando il checksum hash file con l'utilità FCIV

Usando il hashing crittografico algoritmo - ad esempio, MD5, SHA-1, puoi verificare se due file sono identici o meno. Il checksum è un valore hash utilizzato per eseguire i controlli di integrità dei dati sui file. È una specie di firma per un file.

Il Microsoft File Checksum Integrity Verifier tool (FCIV) è un'utilità della riga di comando che calcola MD5 o SHA1 hash crittografici per i file. È possibile eseguire l'output dell'elenco dei file insieme agli hash MD5 o SHA1 in un database XML, quindi confrontare i file nella cartella di destinazione con gli hash archiviati nel file del database XML.

Questo metodo è particolarmente utile dopo aver utilizzato uno dei metodi precedenti, ad esempio Robocopy o WinDiff per sincronizzare due cartelle e si desidera verificare l'integrità di ciascun file di destinazione confrontando l'hash / checksum del file con quello del percorso di origine.

Scenario:

Confrontiamo ricorsivamente i contenuti delle seguenti cartelle utilizzando FCIV:

D:  Websites  Winhelponline  blog  wp-content  uploads E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads

Scarica Microsoft File Checksum Integrity Verifier dall'Area download ufficiale Microsoft ed estrai fciv.exe in una cartella, ad es. d: tools . Quindi segui uno di questi metodi:

opzione 1

  1. Apri una finestra del prompt dei comandi e utilizza questa sintassi della riga di comando:
    d:  tools  fciv.exe -r -add 'D:  Websites  Winhelponline  blog  wp-content  uploads' -bp 'D:  Websites  Winhelponline  blog  wp-content' -sha1 -xml d:  hashdb.xml

    confronta il contenuto della cartella - checksum fciv

    La riga di comando precedente calcola l'hash SHA1 per ogni file in modo ricorsivo e restituisce i nomi dei file e gli hash corrispondenti in un file .XML denominato hashdb.xml .

    Il -bp viene utilizzato per specificare il percorso di base da rimuovere dal nome percorso completo. Assicura che il percorso di base non sia incluso nell'output XML in modo da poter confrontare gli elementi nel percorso della cartella di destinazione con la stessa identica struttura di cartelle.

    Ecco come apparirebbe il contenuto del file XML:

    confronta il contenuto della cartella - checksum fciv

  2. Ora, nella finestra del prompt dei comandi, passa alla cartella di destinazione eseguendo il seguente comando:
    cd / d 'E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content'
  3. Quindi, esegui il seguente comando e premi INVIO:
    d:  tools  fciv.exe -v -sha1 -xml D:  hashdb.xml

    Il comando precedente verifica i file di destinazione rispetto ai checksum hash acquisiti in precedenza nel file XML hashdb.xml .

    Nell'output vengono visualizzati l'elenco dei file modificati (in base al checksum hash) e l'elenco dei file mancanti (nella destinazione):

    confronta il contenuto della cartella - checksum fciv

    Ecco un esempio di output.

    Avvio verifica checksum: data / data / ora Elenco dei file modificati: ----------------------- uploads  2019  05  w10-enhanced-search-settings.png L'hash è: 8dac0a4400d2b700f81bf70c189e49eb6a620a2f Dovrebbe essere: cc2a1523ef070dc2e498dbf5f8cf5edac1b6900d Impossibile eseguire il caricamento di file hash  2019  05  windiff-header.png Messaggio di errore: il sistema non riesce a trovare il file specificato. Codice di errore: 2 Impossibile eseguire l'hash del caricamento dei file  2019  05  windows-store-error-0x800706d9.png Messaggio di errore: il sistema non riesce a trovare il file specificato. Codice di errore: 2 caricamenti  2019  05  w10-enhanced-search-settings.png L'hash è: 8dac0a4400d2b700f81bf70c189e49eb6a620a2f Dovrebbe essere: cc2a1523ef070dc2e498dbf5f8cf5edac1b6900d Impossibile trovare il file Hashp Errore  05. Impossibile trovare il file Hashp Errore di sistema. il file specificato. Codice di errore: 2 Impossibile eseguire l'hash del caricamento dei file  2019  05  windows-store-error-0x800706d9.png Messaggio di errore: il sistema non riesce a trovare il file specificato. Codice di errore: 2 Verifica finale: timestamp

Il metodo sopra è molto utile per verificare l'integrità di corrispondenza file nella cartella di destinazione. Ma non mostra l'elenco di extra file nella destinazione. Ecco dove opzione 2 di seguito ha un ulteriore vantaggio.

opzione 2

Anziché inviare l'elenco dei file e i checksum a un database XML, è possibile eseguire l'output degli elementi nell'origine e nella destinazione in file di testo separati. Quindi i file di testo possono essere confrontati utilizzando WinDiff , WinMerge , DiffChecker.com o WinCompare utilità.

Esegui questi comandi da una finestra del prompt dei comandi.

fciv -r 'D:  Websites  Winhelponline  blog  wp-content  uploads' -bp 'D:  Websites  Winhelponline  blog  wp-content'> d:  source.txt fciv -r 'e:  RameshPC -Synced Backup  Websites  Winhelponline  blog  wp-content  uploads '-bp' e:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content '> d:  destination.txt

confronta il contenuto di due cartelle

Quindi confronta i due file source.txt e destination.txt utilizzando uno strumento di confronto file come WinDiff , WinMerge , DiffChecker.com , DiffMerge o WinCompare.

confronta il contenuto di due cartelle

Vedrai l'elenco dei file mancanti, dei file extra e dei file modificati (in base al checksum calcolato) nelle due posizioni delle cartelle.

Ho sincronizzato le due cartelle utilizzando RoboCopy e quindi ha confrontato nuovamente le cartelle utilizzando il checksum hash FCIV. Ora sono identici!

confronta le cartelle usando l'hash di powershell


Metodo 10: confronta due cartelle utilizzando PowerShell

Utilizzando PowerShell è possibile confrontare facilmente due cartelle in modo ricorsivo.

Avvia PowerShell. Copia il frammento di codice seguente e incollali tutti nella finestra di PowerShell e premi INVIO

Immettere la cartella di origine e le cartelle di destinazione, sostituendo il file source_folder_path e dest_folder_path segnaposto rispettivamente.

$ Folder1 = 'percorso_origine_cartella' $ Cartella2 = 'percorso_cartella_dest' funzione Get-Directory ($ percorso) {$ PathLength = $ percorso.length Get-ChildItem $ percorso -Recorso | % {Add-Member -InputObject $ _ -MemberType NoteProperty -Name RelativePath -Value $ _. FullName.substring ($ PathLength + 1) $ _}} Compare-Object (Get-Directories $ Folder1) (Get-Directory $ Folder2) -Property RelativePath | Ordina RelativePath, Name -desc

confronta le cartelle usando l'hash di powershell

Vedrai un output come questo:

confronta le cartelle usando l'hash di powershell

L'indicatore laterale <= significa che il file o la cartella esiste solo nell'origine. cioè, mancante nella destinazione.
L'indicatore laterale => significa che il file o la cartella esiste solo nella destinazione. cioè, mancante nella sorgente.

Nota dell'editore: Il codice precedente confronta solo i nomi dei file senza corrispondere ad altri dettagli come la dimensione, la data di modifica, ecc. PowerShell ha la capacità di eseguire un confronto hash degli elementi in due cartelle e produrre i risultati, come descritto nel metodo successivo.

Sincronizza cartelle

Con circa 10 righe aggiuntive di codice PowerShell, puoi persino copiare i file diversi o mancanti dall'origine → destinazione o viceversa. Per ulteriori informazioni, vedere Sincronizza file e cartelle con PowerShell .


Metodo 11: confronta due cartelle utilizzando PowerShell con checksum hash file

Per confrontare i file in due posizioni utilizzando file hash checksum , puoi usare PowerShell. PowerShell per impostazione predefinita utilizza l'estensione SHA-256 algoritmo, che si può cambiare usando il -Algoritmo parametro. Come detto prima , hash checksum è un tipo di firma per un file che è unico.

In questo esempio, confronteremo le seguenti cartelle:

D:  Websites  Winhelponline  blog  wp-content  uploads  2019 E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019

Utilizzare la seguente riga di comando per calcolare l'hash per i file nella cartella di origine e visualizzare i risultati in source.txt file.

Get-ChildItem 'D:  Websites  Winhelponline  blog  wp-content  uploads  2019' -Recurse | Get-FileHash | Seleziona Percorso, Hash | export-csv d:  source.txt -Delimiter '`t' -NoTypeInformation

Quindi, esegui il seguente comando per rimuovere i percorsi di base dal file.

(gc -path d:  source.txt -raw) -replace 'D: \ Websites \ Winhelponline \ blog \ wp-content \', '' | File in uscita d:  source.txt

L'elenco dei nomi di file (con percorso relativo) insieme agli hash SHA-256 vengono inviati al file source.txt file.

confronta due cartelle e un elenco di file

Allo stesso modo, esegui i comandi per calcolare gli hash per gli elementi nel file destinazione e quindi rimuovere i percorsi di base da destinazioni.txt :

Get-ChildItem 'E:  RameshPC-Synced Backup  Websites  Winhelponline  blog  wp-content  uploads  2019' -Recurse | Get-FileHash | Seleziona Percorso, Hash | export-csv d:  destination.txt -Delimiter '`t' -NoTypeInformation
(gc -path d:  destination.txt -raw) -replace 'E: \ RameshPC-Synced Backup \ Websites \ Winhelponline \ blog \ wp-content \', '' | File in uscita d:  destinazione.txt

Il comando precedente calcola l'hash per ogni file nella cartella di destinazione in modo ricorsivo e l'output viene scritto d: destination.txt

Confronta utilizzando PowerShell

Quindi, confronta i file utilizzando il seguente comando di PowerShell:

Compare-Object -ReferenceObject $ (Get-Content d:  source.txt) -DifferenceObject $ (Get-Content d:  destination.txt) | fl

confronta due cartelle e un elenco di file

Mostra i diversi file e la posizione di ogni elemento indicato dai simboli <= o => rispettivamente per la cartella sinistra e la cartella destra. L'output mostra anche file aggiuntivi nell'origine e nella destinazione.

Confronta usando WinDiff

In alternativa, puoi eseguire WinDiff e confrontare d: source.txt e d: destination.txt . Puoi usare quanto segue Riga di comando WinDiff per confrontare i file:

d:  Tools  windiff.exe d:  source.txt d:  destination.txt

L'output di WinDiff mostra le differenze evidenziate in giallo / rosso. Dallo screenshot qui sopra, possiamo dedurre che il file 0xc1900101-error.png è diverso. Inoltre, la cartella di destinazione o la cartella a destra (indicata dai simboli !> in WinDiff) ha un file file extra di nome 1h.txt .

PowerShell supporta molti algoritmi hash e quindi ha un vantaggio rispetto a FCIV.exe attrezzo. Lo strumento Microsoft FCIV supporta solo gli algoritmi MD5 e SHA-1, che sono obsoleti e possono essere inefficaci a causa di problemi di collisione , anche se molto raramente. La collisione SHA-1 significa che due file hanno hash SHA-1 identici ma contenuti diversi. Quindi, SHA-256 potrebbe essere l'algoritmo preferito per il confronto di file o cartelle in un ambiente di produzione.


Si noti che i metodi della riga di comando 11 e 12 di seguito aiutano solo a confrontare la struttura di due directory insieme ai file. Non confrontano le dimensioni dei file o la data di modifica per sapere qual è il più recente. Fanno solo un semplice confronto in base ai nomi dei file e non sapresti se uno dei file di destinazione viene danneggiato durante un'operazione di copia. In un ambiente di produzione, potrebbe essere necessario utilizzare altri strumenti o metodi, se necessario verificare l'integrità dei tuoi file nelle cartelle di origine e di destinazione, per assicurarti che siano esattamente le stesse copie.

Metodo 12: elenca la struttura delle cartelle utilizzando il comando TREE

Per confrontare due directory con le sottodirectory, il buon vecchio ALBERO il comando è estremamente utile. Supponi di voler confrontare le due cartelle (inclusi i nomi dei file) D: SOURCE e D: DEST , Segui questi passi:

  1. Apri una finestra del prompt dei comandi.
  2. Digita questi comandi:
    TREE D:  SOURCE / A / F> D:  SOURCE.TXT
    TREE D:  DEST / A / F> D:  DEST.TXT

    Questo restituisce ciascuno dei risultati del comando in file di testo separati nel file D: directory principale dell'unità. I file di testo avranno la struttura delle directory in un formato ad albero, il che semplifica il lavoro di confronto.

    Consiglio rapido: Per confrontare solo le directory, rimuovere il file / F bandiera.
  3. Successivamente, avvia l'utilità di confronto del testo come WinDiff, WinMerge o DiffMerge. In alternativa, puoi confrontare i due file di testo online tramite diffchecker.com .
  4. Vai a DiffChecker.com e incolla il contenuto di d: source.txt in una colonna e D: DEST.txt in un'altra colonna. Clic Trova le differenze .

    Confronto di directory

    Confronto tra directory e file


Metodo 13: struttura delle cartelle elenco utilizzando il comando DIR

Per confrontare il contenuto di due directory, un'altra riga di comando che puoi utilizzare è A TE comando.

Utilizzare la seguente sintassi della riga di comando per generare l'elenco dei file in una directory in modo ricorsivo. È quindi possibile confrontarlo utilizzando uno strumento di confronto o DiffMerge.

DIR D:  SOURCE / S / AD / B> D:  SOURCE.TXT
DIR D:  DEST / S / AD / B> D:  DEST.TXT
Consiglio rapido: Per includere file insieme all'elenco delle directory, rimuovere il flag '/ AD'.

Tuttavia, c'è un problema quando si utilizza il comando DIR. Elenca la directory completa ei percorsi dei file nell'output, come di seguito:

  1. D: Source Apr Week1
  2. D: Source Apr Week2
  3. D: DEST Apr Week1
  4. D: DEST Apr Week2

In tal caso, dovrai rimuovere i percorsi di base di confronto D: SOURCE e D: DEST nei rispettivi file di testo modificandoli con Blocco note. Per sostituire il testo in blocco, utilizzare l'opzione Sostituisci nel Blocco note e rimuovere ogni occorrenza del percorso di base.

Al termine, salva i file e confronta i contenuti online tramite DiffChecker o utilizzando uno strumento di confronto del testo offline come WinDiff o WinMerge.

Confronto di directory: elenco generato utilizzando DIR invece di TREE

Scommetto che troverai l'output del contenuto della directory generato utilizzando ALBERO essere molto più facile e molto più ordinato di A TE .


Spero che i metodi di cui sopra ti abbiano aiutato a confrontare rapidamente il contenuto di due cartelle in modo ricorsivo, identificare i file mancanti e modificati e riconciliare le differenze.

Facci sapere i tuoi commenti!


Una piccola richiesta: se ti è piaciuto questo post, condividilo?

Una tua 'minuscola' condivisione aiuterebbe davvero molto con la crescita di questo blog. Alcuni ottimi suggerimenti:
  • Fissalo!
  • Condividilo sul tuo blog preferito + Facebook, Reddit
  • Tweet it!
Quindi grazie mille per il tuo supporto, mio ​​lettore. Non ci vorranno più di 10 secondi del tuo tempo. I pulsanti di condivisione sono proprio sotto. :)