Vergelijk de inhoud van twee mappen op een Mac met behulp van diff
Inhoudsopgave:
Als je het verschil wilt zien tussen twee mappen op een Mac, of de inhoud van twee mappen wilt vergelijken, kun je dat eenvoudig doen met behulp van het krachtige diff-commando.
Deze tutorial laat je zien hoe je twee mappen en de inhoud van die mappen kunt vergelijken met behulp van de Terminal. Deze opdrachtregelaanpak levert een bestand op met daarin de precieze verschillen tussen twee doelmappen.
Om deze vergelijking tot stand te brengen, gebruiken we het opdrachtregelprogramma 'diff', diff is beschikbaar op alle Macs, samen met linux en andere unix-besturingssystemen, dus dit is in feite een platformonafhankelijke oplossing voor het vergelijken van mappen. Diff is vrij eenvoudig te gebruiken om de inhoud van twee willekeurige mappen gemakkelijk te vergelijken. Volg gewoon de onderstaande syntaxis.
De inhoud van twee mappen vergelijken met diff
Om aan de slag te gaan, start u de Terminal in Mac OS (te vinden in /Applications/Utilities/) en gebruikt u vervolgens de volgende opdrachtsyntaxis:
diff -rq directory1 directory2
Klik op Return als u de juiste mappen hebt opgegeven om te vergelijken. Dit voert het diff-commando uit waarbij directory1 en directory2 worden vergeleken (als je een map hebt met een spatie in de bestandsnaam, plaats deze dan gewoon tussen aanhalingstekens zoals: "map één"). We gebruiken de vlag -rq omdat -r betekent dat het recursief is om submappen op te nemen, en -q vereenvoudigt de opdrachtuitvoer tot alleen de getoonde verschillen.
Voorbeeld van de uitvoer van de opdracht kan er als volgt uitzien:
$diff -rq directory1 directory2
Alleen in directory1: voorbeeld221.txt
Alleen in directory1: SuperSecretDifferentFile.rtf
Alleen in map2: AmazingScript.py
Alleen in map2: MyFavoriteSong.mp3
Alleen in directory2: MyFavoriteSpecialMovie.mp4
Je kunt ook een stap verder gaan en de uitvoer van dat commando omleiden naar een bestand, laten we zeggen dat het de naam Differences.txt: heeft
diff -rq directory1 directory2 >> verschillen.txt
Hier is een voorbeeld en hoe de daadwerkelijke afdruk eruit zal zien. Laten we zeggen dat we mappen met de naam "oude muziek" en "nieuwe muziek" vergelijken, en we willen dat de opdrachtuitvoer het verschil laat zien tussen die twee mappen in het bestand met de naam "musicfolders.txt', dan zou de volgende opdrachtsyntaxis worden gebruikt:
"diff -rq oude muziek>> musicfolders.txt"
Kijk nu in de huidige werkmap naar het bestand dat u zojuist hebt gemaakt door het commando diff uit te voeren, in dit geval is het bestand musicfolders.txt en de inhoud kan worden bekeken in elke teksteditor, opdrachtregel of anders. Als je het tekstbestand opent, zie je zoiets als dit:
Alleen in oude muziek: song1.mp3 Alleen in oude muziek: song2.mp3 Alleen in oude muziek: song3.mp3 Alleen in nieuwe muziek: instrumental1.mp3 Alleen in nieuwe muziek: instrumental1.mp3
Als je het bestand vanaf de opdrachtregel wilt bekijken, probeer dan:
more musicfolders.txt
Anders navigeer je gewoon naar de betreffende map en open je deze in je favoriete teksteditor.
Als u liever geen tekstbestand maakt met de wijzigingen, laat u de uitvoeromleiding van de opdracht achterwege. Misschien wilt u de uitvoer doorsluizen naar iets als 'meer' om het scannen te vergemakkelijken:
"diff -rq oude muziek>"
Het diff-commando is vrij krachtig en er zijn veel andere opties beschikbaar, gebruik het man diff-commando voor alle details over het gebruik van diff en de talloze beschikbare functies.
Het is de moeite waard om nogmaals te vermelden dat dit commando werkt in Mac OS X – alle versies – en in de meeste op Unix gebaseerde besturingssystemen.