Confronta i contenuti di due directory su un Mac Usando diff
Sommario:
Se vuoi vedere la differenza tra due cartelle su un Mac o confrontare i contenuti di due directory, puoi farlo facilmente con l'aiuto del potente comando diff.
Questo tutorial ti mostrerà come confrontare due directory, e il contenuto di quelle directory, usando il Terminale. Questo approccio a riga di comando produrrà un file contenente le differenze precise mostrate tra due cartelle di destinazione.
Per ottenere questo confronto, useremo lo strumento a riga di comando 'diff', diff è disponibile su tutti i Mac, insieme a Linux e altri sistemi operativi Unix, quindi questa è effettivamente una soluzione multipiattaforma per confrontare le directory. Diff è abbastanza semplice da usare per confrontare facilmente i contenuti di due directory qualsiasi, segui semplicemente usando la sintassi descritta di seguito.
Come confrontare i contenuti di due directory con diff
Per iniziare, avvia il Terminale in Mac OS (si trova in /Applicazioni/Utility/) e usa la seguente sintassi di comando:
diff -rq directory1 directory2
Premi Invio dopo aver specificato le directory appropriate da confrontare. Questo esegue il comando diff confrontando directory1 e directory2 (se hai una cartella con uno spazio nel nome del file, mettilo tra virgolette in questo modo: "cartella uno"). Stiamo usando il flag -rq perché -r significa che è ricorsivo includere le sottodirectory e -q semplifica l'output del comando alle sole differenze mostrate.
L'output di esempio del comando potrebbe essere simile al seguente:
$diff -rq directory1 directory2
Solo nella directory1: example221.txt
Solo nella directory1: SuperSecretDifferentFile.rtf
Solo nella directory2: AmazingScript.py
Solo nella directory2: MyFavoriteSong.mp3
Solo nella directory2: MyFavoriteSpecialMovie.mp4
Puoi anche fare un ulteriore passo avanti e reindirizzare l'output di quel comando a un file, diciamo che si chiama difference.txt:
diff -rq directory1 directory2 >> differenze.txt
Ecco un esempio e come apparirà la stampa effettiva. Diciamo che stiamo confrontando le cartelle denominate "old music" e "new music" e vogliamo che l'output del comando mostri la differenza tra queste due directory nel file denominato "musicfolders.txt", verrà utilizzata la seguente sintassi del comando:
"diff -rq old music>> musicfolders.txt"
Ora cerca nella directory di lavoro attuale il file che hai appena creato emettendo il comando diff, in questo caso il file è musicfolders.txt e il contenuto può essere visualizzato in qualsiasi editor di testo, riga di comando o altrimenti. Aprendo il file di testo vedrai qualcosa del genere:
Solo nella vecchia musica: song1.mp3 Solo nella vecchia musica: song2.mp3 Solo nella vecchia musica: song3.mp3 Solo nella nuova musica: instrumental1.mp3 Solo in nuova musica: instrumental1.mp3
Se vuoi visualizzare il file dalla riga di comando, prova:
more musicfolders.txt
Altrimenti vai alla directory contenente e aprila nel tuo editor di testo preferito.
Se preferisci non creare un file di testo con le modifiche, lascia semplicemente fuori il reindirizzamento dell'output del comando. Potresti voler reindirizzare l'output a qualcosa come " altro" per rendere più facile la scansione:
"diff -rq vecchia musica>"
Il comando diff è piuttosto potente e ci sono molte altre opzioni disponibili con esso, usa il comando man diff per ottenere tutti i dettagli su come usare diff così come la miriade di funzioni disponibili.
Vale la pena ricordare ancora una volta che questo comando funzionerà in Mac OS X – tutte le versioni – così come nella maggior parte dei sistemi operativi basati su Unix.