Sammenlign indholdet af to mapper fra kommandolinjen

For at sammenligne og liste det forskellige indhold af to mapper uden det ekstra output, du får gennem kommandoer som diff, kan du i stedet bruge komm kommandoen. For at komme i gang skal du starte Terminal og skrive følgende kommando og justere katalogvejene efter behov:

comm -3 <(ls -1 folder1) <(ls -1 folder2)

Den angivne output vil være de filer, der er forskellige i hver mappe, med filer, der er unikke for mappe1, der passer til venstre, og filer, der er unikke for mappe 2, der passer til højre.

For eksempel at sammenligne indholdet af en mappe kaldet "Billeder" og en mappe med navnet "OldPictures", begge lagret i brugerdownloadsmappen, vil syntaksen være følgende:

comm -3 <(ls -1 ~/Downloads/Pictures) <(ls -1 ~/Downloads/OldPictures)

Output kan se ud som følger:

$ comm -3 <(ls -1 ~/Downloads/Pictures) <(ls -1 ~/Downloads/OldPictures)
Folder-1-File.PNG
Folder-2-File copy.PNG
photo 1 copy.PNG
photo 3.PNG

Bemærk indrykket, som viser, hvilke filer der er unikke for hver mappe. I ovenstående eksempel er filen "foto 1 copy.PNG" og "photo 3.png" justeret rigtigt, derfor er de unikke for OldPictures-mappen og Folder-1-File.PNG og Folder-2-File kopi. PNG er unikke for den originale Pictures-mappe.

Dette virker godt i Mac OS X, men det er en generisk Unix-kommando, så du bør finde den anvendelig i Linux og andre varianter. Hvis du løber ind i kompatibilitetsproblemer, eller find denne kommando for unødigt kompliceret, prøv at bruge diff til at udføre den samme funktion.

Great trick fundet af @climagic på Twitter, @osxdaily er der også!