Lesere som deg er med på å støtte MUO. Når du foretar et kjøp ved å bruke lenker på nettstedet vårt, kan vi tjene en tilknyttet provisjon.
Har du noen gang hatt to like filer og lurt på hvilke deler som er forskjellige? Skriver du kode og prøver å finne ut hvordan du kan blande inn endringer du eller en annen programmerer har gjort? Det er et standard Linux-verktøy kalt "diff" som vil hjelpe.
Hva er diff?
diff er et verktøy som viser forskjellene mellom to tekstfiler, som er der navnet kommer fra. Det er en del av POSIX-standarden, som betyr at den er til stede på nesten alle Unix-lignende systemer, inkludert Linux så vel som macOS og de andre BSD-ene.
Hvis du er på en større Linux-distribusjon, har du mest sannsynlig GNU-versjonen. Hvis du er på en minimal Linux distro, kan du ha den som en del av BusyBox- eller Toybox-biblioteket eller BSD-versjonen hvis du bruker et BSD-system. Du kan se hvilken versjon du har ved å sjekke manualsiden:
mann diff
Sammenligning av to filer på Linux med diff
For å sammenligne to tekstfiler, send bare banen deres som argumenter til diff:
diff fil1 fil2
diff vil vise linjene som er forskjellige mellom de to i filen. Linjer i den første filen er innledet med en "<" og linjer i den andre er innledet med en ">" karakter. Utdataene viser endrede, tilføyde eller slettede linjer, inkludert antall linjer som er berørt totalt.
Hvis du endrer den første linjen, vil diff sende ut "1c1", som betyr "start på linje 1, endre linje 1." I diff, "en" står for "legge til", "c"for"endring"og"d"for"slette."
Andre forskjellige funksjoner og alternativer
For å se filer side ved side, bruk -y alternativ:
diff -y fil1 fil2
De -u alternativet produserer en "enhetlig" utsikt med et redigeringsskript for ed-editoren slik at endringer kan utføres automatisk.
Før distribuerte versjonskontrollsystemer som Git ble mye brukt, ville åpen kildekode-prosjekter be om oppdateringer i dette formatet via e-post og deretter bruke dem til kodebasen med oppdateringsprogrammet.
Nå kan du sammenligne filer på Linux med diff
Diff-verktøyet kan virke uklart, men det er fordelaktig å se forskjellene mellom to filer, enten du bare sammenligner filene eller sender inn patcher til en åpen kildekodeutvikler.
Hvis du ikke er en fan av Linux-terminalen, trenger du ikke engang å bruke kommandolinjen for å sammenligne filer, eller til og med bruke din lokale maskin i det hele tatt. Det finnes nettbaserte verktøy som lar deg sammenligne filer på nettet.