Jämför två kataloginnehåll på en Mac med diff
Innehållsförteckning:
Om du vill se skillnaden mellan två mappar på en Mac, eller jämföra två kataloginnehåll, kan du enkelt göra det med hjälp av det kraftfulla diff-kommandot.
Denna handledning visar dig hur du jämför två kataloger och innehållet i dessa kataloger med hjälp av terminalen. Denna kommandoradsmetod kommer att mata ut en fil som innehåller de exakta skillnaderna som visas mellan två målmappar.
För att uppnå denna jämförelse kommer vi att använda kommandoradsverktyget 'diff', diff är tillgängligt på alla Mac-datorer, tillsammans med linux och andra unix-operativsystem, så detta är faktiskt en plattformsoberoende lösning för att jämföra kataloger. Diff är ganska enkel att använda för att enkelt jämföra innehållet i två kataloger, följ bara med genom att använda syntaxen som beskrivs nedan.
Hur man jämför innehållet i två kataloger med diff
För att komma igång, starta terminalen i Mac OS (finns i /Applications/Utilities/) och använd sedan följande kommandosyntax:
diff -rq katalog1 katalog2
Tryck på retur när du har angett lämpliga kataloger att jämföra. Detta exekverar kommandot diff som jämför katalog1 och katalog2 (om du har en mapp med ett mellanslag i filnamnet, sätt det bara inom citattecken: "mapp ett"). Vi använder flaggan -rq eftersom -r betyder att det är rekursivt att inkludera underkataloger, och -q förenklar kommandoutmatningen till endast de skillnader som visas.
Exempel på kommandot kan se ut så här:
$diff -rq katalog1 katalog2
Endast i katalog1: exempel221.txt
Endast i katalog1: SuperSecretDifferentFile.rtf
Endast i katalog2: AmazingScript.py
Endast i katalog2: MyFavoriteSong.mp3
Endast i katalog2: MyFavoriteSpecialMovie.mp4
Du kan också gå ett steg längre och omdirigera utdata från det kommandot till en fil, låt oss säga att den heter differences.txt:
diff -rq directory1 directory2 >> differences.txt
Här är ett exempel och hur den faktiska utskriften kommer att se ut. Låt oss säga att vi jämför mappar som heter "gammal musik" och "ny musik", och vi vill att kommandoutgången visar skillnaden mellan de två katalogerna i filen som heter "musicfolders.txt" så skulle följande kommandosyntax användas:
"diff -rq old music>> musicfolders.txt"
Leta nu i den aktuella arbetskatalogen efter filen du nyss skapade genom att mata ut kommandot diff, i det här fallet är filen musicfolders.txt och innehållet kan ses i valfri textredigerare, kommandorad eller annat. När du öppnar textfilen ser du något sånt här:
Endast i gammal musik: låt1.mp3 Endast i gammal musik: låt2.mp3 Endast i gammal musik: låt3.mp3 Endast i ny musik: instrumental1.mp3 Endast i ny musik: instrumental1.mp3
Om du vill visa filen från kommandoraden, försök:
more musicfolders.txt
Annars är det bara att navigera till katalogen som innehåller och öppna den i din favorittextredigerare.
Om du föredrar att inte skapa en textfil med ändringarna, lämna bara utdataomdirigeringen av kommandot. Du kanske vill överföra utdata till något som "mer" för att göra det lättare att skanna:
"diff -rq gammal musik>"
Diff-kommandot är ganska kraftfullt och det finns många andra alternativ tillgängliga med det, använd kommandot man diff för att få fullständig information om hur du använder diff samt de otaliga funktionerna som finns tillgängliga.
Det är värt att nämna igen att det här kommandot kommer att fungera i Mac OS X – alla versioner – såväl som de flesta Unix-baserade operativsystem.