Sammenlign innholdet i to kataloger fra kommandolinjen

Anonim

For å sammenligne og liste det forskjellige innholdet i to kataloger uten den ekstra utgangen du får gjennom kommandoer som diff, kan du bruke comm-kommandoen i stedet. For å komme i gang, start Terminal og skriv inn følgende kommando, og juster katalogbanene etter behov:

comm -3 <(ls -1 mappe1) <(ls -1 mappe2)

For å sammenligne innholdet i en mappe k alt «Bilder» og en mappe med navnet «Gamle bilder», begge lagret i brukernedlastingskatalogen, vil syntaksen være følgende:

comm -3 <(ls -1 ~/Nedlastinger/Bilder) <(ls -1 ~/Nedlastinger/Gamle bilder)

Utdata kan se slik ut:

$ comm -3 <(ls -1 ~/Nedlastinger/Bilder) <(ls -1 ~/Nedlastinger/Gamle bilder) Folder-1-File.PNG Folder -2-fil kopi.PNG-bilde 1 kopi.PNG-bilde 3.PNG

Legg merke til innrykk, som viser hvilke filer som er unike for hver mappe. I eksemplet ovenfor er filen "photo 1 copy.PNG" og "photo 3.png" rettjustert, derfor er de unike for OldPictures-katalogen og Folder-1-File.PNG og Folder-2-File copy.PNG er unike for den originale Pictures-mappen.

Dette fungerer bra i Mac OS X, men det er en generisk unix-kommando, så du bør finne den brukbar i linux og andre varianter også. Hvis du får kompatibilitetsproblemer, eller synes denne kommandoen er unødvendig kompleks, kan du prøve å bruke diff for å utføre samme funksjon.

Flott triks funnet av @climagic på Twitter, @osxdaily er også med!

Sammenlign innholdet i to kataloger fra kommandolinjen