Usporedite sadržaje dva direktorija iz naredbenog retka
Za usporedbu i popis različitih sadržaja dvaju direktorija bez dodatnog izlaza koji dobivate preko naredbi poput diff, umjesto toga možete koristiti naredbu comm. Za početak pokrenite Terminal i upišite sljedeću naredbu, prilagođavajući staze direktorija prema potrebi:
comm -3 <(ls -1 folder1) <(ls -1 folder2)
Navedeni izlaz će biti datoteke koje su različite u svakoj mapi, s datotekama jedinstvenim za mapu 1 poravnavanjem ulijevo, a datotekama jedinstvenim za mapu 2 poravnavanjem udesno.
Na primjer, za usporedbu sadržaja mape pod nazivom “Pictures” i mape pod nazivom “OldPictures”, obje pohranjene u direktoriju preuzimanja korisnika, sintaksa bi bila sljedeća:
comm -3 <(ls -1 ~/Preuzimanja/Slike) <(ls -1 ~/Preuzimanja/Stare slike)
Izlaz može izgledati ovako:
$ comm -3 <(ls -1 ~/Downloads/Pictures) <(ls -1 ~/Downloads/OldPictures) Folder-1-File.PNG Folder -2-kopija datoteke.PNG fotografija 1 kopija.PNG fotografija 3.PNG
Obratite pozornost na uvlaku koja vam pokazuje koje su datoteke jedinstvene za svaku mapu. U gornjem primjeru, datoteka “photo 1 copy.PNG” i “photo 3.png” poravnate su desno, stoga su jedinstvene za direktorij OldPictures i Folder-1-File.PNG i kopija datoteke Folder-2.PNG jedinstveni su za originalnu mapu Slike.
Ovo radi odlično u Mac OS X-u, ali to je generička unix naredba pa biste je mogli koristiti iu linuxu i drugim varijantama. Ako naiđete na probleme s kompatibilnošću ili smatrate da je ova naredba nepotrebno složena, pokušajte koristiti diff za izvođenje iste funkcije.
Sjajan trik pronašao je @climagic na Twitteru, @osxdaii je također tamo!