Läsare som du hjälper till att stödja MUO. När du gör ett köp med hjälp av länkar på vår webbplats kan vi tjäna en affiliate-provision.

Har du någonsin haft två liknande filer och undrat vilka delar som är olika? Skriver du kod och försöker komma på hur du ska blanda in ändringar som du eller någon annan programmerare gjort? Det finns ett standard Linux-verktyg som heter "diff" som hjälper.

Vad är diff?

diff är ett verktyg som visar skillnaderna mellan två textfiler, vilket är varifrån namnet kommer. Det är en del av POSIX-standarden, vilket betyder att det finns på nästan alla Unix-liknande system, inklusive Linux samt macOS och de andra BSD: erna.

Om du använder en större Linux-distribution har du troligen GNU-versionen. Om du är på en minimal Linux-distro, du kanske har den som en del av BusyBox- eller Toybox-biblioteket eller BSD-versionen om du använder ett BSD-system. Du kan se vilken version du har genom att kolla manualsidan:

man diff

Jämföra två filer på Linux med diff

För att jämföra två textfiler, skicka helt enkelt deras sökväg som argument för att diff:

instagram viewer
diff fil1 fil2

diff kommer att visa raderna som skiljer sig mellan de två i filen. Rader i den första filen inleds med en "<" och rader i den andra föregås av en ">" karaktär. Utdatan visar ändrade, tillagda eller borttagna rader, inklusive antalet rader som påverkas totalt.

Om du ändrar den första raden kommer diff att mata ut "1c1", vilket betyder "börja på rad 1, ändra rad 1." I diff, "a" står för "bifoga", "c" för "förändra"och"d" för "radera."

Andra olika funktioner och alternativ

För att se filer sida vid sida, använd -y alternativ:

diff -y fil1 fil2

De -u option producerar en "uniform" outlook med ett redigeringsskript för ed-editorn så att ändringar kan utföras automatiskt.

Innan distribuerade versionskontrollsystem som Git användes i stor utsträckning, skulle öppen källkodsprojekt begära patchar i detta format via e-post och sedan applicera dem på kodbasen med patchprogrammet.

Nu kan du jämföra filer på Linux med diff

Diff-verktyget kan verka obskyrt, men det är fördelaktigt att se skillnaderna mellan två filer, oavsett om du bara jämför filerna eller skickar patchar till en utvecklare med öppen källkod.

Om du inte är ett fan av Linux-terminalen behöver du inte ens använda kommandoraden för att jämföra filer, eller ens använda din lokala maskin överhuvudtaget. Det finns onlineverktyg som låter dig jämföra filer på webben.