Domanda Strumento di confronto file e directory?


Sto cercando qualcosa che possa confrontare directory e file come Beyond Compare per Windows.

È principalmente per l'uso del controllo del codice sorgente, ma ho bisogno di usarlo anche per la distribuzione.


142
2017-11-10 12:15


origine


Vuoi solo la lista dei file o il contenuto reale di ogni file? - Martin Ueding
Voglio la lista dei file e, se possibile, i diversi contenuti tra i file con lo stesso percorso. - isoman
Sarebbe utile se il Strumento GUI consente nascondendo cartelle e file identici. Ciò renderebbe molto più facile concentrarsi sulle cartelle e sui file dispari. Qualcuno conosce uno strumento che supporta questa funzione? - JJD
Dai un'occhiata a unisono. Al di là del confronto, l'approccio "one-stop shop fa tutto", mentre l'unisono si concentra sulla gestione della traversata degli alberi, mantenendo lo stato e propagando i cambiamenti, coprendo Oltre le funzionalità di confronto delegando cose come diff, 3-way merge, ecc. a qualunque sia il tuo programma preferito che lavora a livello di file. Unison è un software gratuito, molto robusto e maturo, in grado di rilevare e sincronizzare rapidamente enormi alberi, attraverso una rete tra diversi sistemi operativi, ecc. Leggere prima la documentazione, specialmente su Windows. - Stéphane Gourichon
emacs ha uno strumento per confrontare le directory. Come tutto ciò che emacs, l'eye candy è, beh, "cosa vuol dire eye candy?", Ma mostra l'aiuto contestuale con i tasti, consente con poche sequenze di tasti un'analisi ricorsiva, nasconde file identici o persino sottodirectory, in modo interattivo scegli i file per mostrare il colore -Codiche differenze con varie opzioni, si fondono, si propagano o eseguono modifiche arbitrarie sui file, facilmente passano al file successivo o alla directory, tenendo traccia dello stato, con tutte le normali possibilità di modifica. - Stéphane Gourichon


risposte:


meldinstall meld

Meld è uno strumento in grado di confrontare e unire file e directory. È una GUI analogica allo standard diff  install diffutils e patch  install patch strumenti da riga di comando. (Vedere uomo diff e patch uomo per maggiori dettagli su quelli)

enter image description here

Inoltre, molti sistemi di controllo del codice sorgente (come bzr  install bzr-gtk o git  install git) hanno la capacità di creare differenze tra le versioni.


169
2017-11-10 12:28



La fusione è INCREDIBILE. Lo uso come mio controllo sorgente diff. - Matt Joiner
Ho appena provato una cartella più grande - 4 GB, 2000 file. Funzionalità di fusione è come desiderato. Ma per questa combinazione di cartelle è estremamente lento e l'interfaccia utente non risponde (blocchi). Usando ora rsync. - geekQ
Funziona egregiamente anche nel confronto di file di testo affiancati, o anche copia di paste. La migliore interfaccia che ho visto! - Stefan Rogin
@geekQ come alternativa veloce, in grado di gestire il più grande di una cartella come vuoi istantaneamente, vedi beyond compare sotto. superiore per fondere imho - Blauhirn
Combinarsi si interrompe ogni volta che voglio selezionare una cartella: / Ho la versione più recente disponibile sul mio repository di distribuzione (Ubuntu 14.04) - Youda008


Diff è tuo amico.

diff -ur path1 path2

Questo confronterà tutti i file che sono comuni tra path1 e path2.

Se cambi -ur a -urN quindi mostrerà anche il contenuto dei file che sono presenti solo in uno dei percorsi.


42
2017-10-04 17:43



installato colordiff e usato colordiff -ur path1 path2 - warvariuc
Non funziona in cygwin. - Tomáš Zato


'Beyond Compare' è disponibile anche per Linux.

Controlla la loro url di download: http://www.scootersoftware.com/download.php


21
2017-11-10 12:23



Beyond Compare è particolarmente utile quando si esegue un ssh (con chiave o password) a un host remoto e confrontandolo con una copia locale. - brianlmerritt


Usa il diff comando:

diff -u file1 file2

diff -u seleziona un formato con poche righe di contesto. Un piano diff file1 file2 elenca solo le diverse linee. Ci sono molte più opzioni per controllare il formato di output, ignorare le differenze solo per lo spazio bianco, ecc.

Se si desidera scrivere l'output in un file, reindirizzare:

diff -u file1 file2 >file1-file2.diff

13
2017-10-07 20:05





Gnome Commanderinstall Gnome Commander

L'interfaccia potrebbe non essere molto sexy, ma è estremamente potente!

alt text

E se fossi abituato ad un altro * Comandante (come Norton o simili), non ti perderai.


12
2017-11-10 13:09



Non l'ho usato per confrontare 2 file, ma l'ho usato per dirmi quali file erano diversi confrontando le directory. Questo è particolarmente utile quando si selezionano le foto ;-) - Huygens


Strumenti a riga di comando

Ispirato da questo post di blog.

diff

Elenco di file diversi:

diff -qr folder1 folder2

Elenco anche dei contenuti:

diff -Naur folder1 folder2

rsync

Se le due directory non sono sulla stessa macchina, rsync potrebbe essere la soluzione più semplice. Generalmente rsync viene utilizzato per sincronizzare le directory, ma è possibile eseguirlo in modalità dettagliata e asciutta, quindi elencherà solo i file che dovrà modificare.

rsync -rvnc --delete folder1 server:/path/to/folder2

Puoi omaggiare c se vuoi confrontare i file in base a timestamp e dimensioni dei file per accelerare tutto:

rsync -rvn --delete folder1 server:/path/to/folder2

10
2017-12-25 19:22





Krusaderinstall krusader

Krusader è uno strumento gratuito (disponibile nel Software Center) che mostra i contenuti delle cartelle in confronto e puoi sincronizzarti con molte opzioni diverse. È possibile filtrare durante la sincronizzazione e il confronto.

Krusader

Per confrontare i contenuti dei file, basta selezionare due file, selezionare "file"> "confronta contenuto" e vengono confrontati lettera per lettera. lo strumento di confronto predefinito usato da krusader è lo strumento predefinito di KDE "Kompare". Puoi impostare krusader per utilizzare qualsiasi altro strumento di confronto, ad esempio uno dei precedenti.

Questa è la soluzione più completa che abbia mai trovato ed è molto conveniente. E supporta tutte le funzioni keybindung usate da midnight commander (norton commander syntax).


9
2017-11-10 18:39



È inoltre possibile utilizzare "Strumenti -> Sincronizza directory" per ottenere una visualizzazione delle modifiche dei file ricorsive dei due pannelli di directory. - Angelos Pikoulas
sfortunatamente il sincronizzatore in krusader non è mantenuto: bugs.kde.org/show_bug.cgi?id=270150#c7. C'è un'alternativa che viene mantenuta attivamente? - rubo77
@ rubo77: questo bug è stato risolto nel frattempo. - mivk


KDiff3  install kdiff3

È un front-end grafico a diff per gli utenti di KDE (o se non ti dispiace usare app Qt).

kdiff3

C'è anche DirDiff  install dirdiff per le directory.


9
2017-11-10 12:59





Può essere meld è quello che stai cercando. O Qui sono alcune altre alternative.


6
2017-11-10 12:23





Unison è uno strumento di sincronizzazione file veloce che utilizza l'algoritmo rsync e ti consente di visualizzare le differenze in anteprima prima di aggiornare tra 2 posizioni, siano esse remote o locali.


4
2018-01-18 02:29