Så jämför du två textfiler och ser vad som ändrats

Det snabbaste sättet att jämföra två textfiler är att klistra in båda i ett diff-verktyg som visar dem sida vid sida och läsa raderna som det markerar. Grönt för det som lagts till, rött för det som tagits bort, och en ändrad rad visas som en av varje. Ingen installation, ingen uppladdning, klart på några sekunder.

Det täcker de flesta fall. Men två filer som ser identiska ut på skärmen kan ändå skilja sig byte för byte, och det är där folk förlorar en hel eftermiddag. Den här guiden visar den snabba metoden, ett genomarbetat exempel, de osynliga skillnaderna som är värda att känna till, och var en AI-chattbot som ChatGPT faktiskt hjälper. Om du bara vill ha verktyget kör vår sida för textjämförelse hela grejen i din webbläsare.

Vad "att jämföra två textfiler" egentligen betyder

En textfil är en sekvens av tecken uppdelad i rader. Att jämföra två av dem innebär att ställa upp de delar som stämmer överens och flagga de delar som inte gör det. Det klassiska verktyget för detta är Unix-verktyget diff, och varje modern diff-visare, inklusive vår, gör samma jobb med en vänligare presentation.

De flesta diff-verktyg arbetar rad för rad först. Det håller dem snabba på långa filer och matchar hur folk läser: du skannar efter raden som flyttats och tittar sedan inuti den efter ordet som ändrats. Vår motor är byggd på Googles diff-match-patch, som kör en genomgång i radläge innan den tittar på enskilda tecken, så en logg på tusen rader diffas fortfarande direkt.

Sätt att jämföra två textfiler

Det finns ingen enda rätt metod. Det beror på var filerna finns och hur exakt du behöver vara.

MetodBäst förExakt?Ansträngning
Att läsa dem sida vid sidaNågra rader, en uppenbar ändringDu är domarenLåg
Diff-verktyg onlineSnabbkontroller, inklistring var som helst ifrånJa, exakt på tecknetLåg
Kommandoraden (diff, git diff)Filer på disk, skript, enorma filerJaMedel
Kodeditor (VS Code "Compare")Filer som redan är öppna i din editorJaLåg
AI-chattbot (ChatGPT)En sammanfattning av ändringen på vanlig svenskaNej, kan missa eller omformuleraLåg

För en engångskontroll vinner ett webbläsarverktyg på snabbhet eftersom det inte finns något att installera och du kan klistra in direkt från ett mejl, en logg eller en kodgranskning. För filer som redan spåras i ett repositorium finns git diff direkt till hands. Vi återkommer till AI-alternativet, eftersom det är genuint användbart för rätt jobb och en fälla för fel jobb.

Jämför två textfiler i din webbläsare, steg för steg

Det här är rutinen när någon skickar dig två versioner av ett dokument och frågar "vad är annorlunda?" Det tar ungefär tio sekunder.

  1. Öppna textjämförelseverktyget.
  2. Klistra in originalet till vänster och den nya versionen till höger. Eller använd Ladda upp för att läsa in en fil direkt från disk.
  3. Läs markeringarna. Tillagda rader är gröna, borttagna rader är röda, och en rad som ändrats visas som ett rött-och-grönt par.
  4. Bläddra igenom de ändrade raderna. Inuti var och en markeras de exakta orden som skiljer sig, så du behöver inte läsa om hela raden.
  5. Om de två filerna ser mycket mer olika ut än de borde, hoppa till avsnittet om osynliga skillnader nedan.

Ett genomarbetat exempel

Säg att en kollega skickar tillbaka ett redigerat stycke och ber dig kontrollera deras ändringar. Här är ditt original:

The service starts at 9am on weekdays.
Refunds are processed within 14 days.
Contact [email protected] for help.

Och här är deras version:

The service starts at 8am on weekdays.
Refunds are processed within 30 days.
Contact [email protected] for help.
Priority support is available on request.

Släng in båda i diffen och den verkliga historien är kort, även om den är lätt att skumma förbi i löpande text:

Vad som faktiskt ändrats
RadFöreEfterÄndring
Starttid9am8amÄndrad
Återbetalningsfönster14 days30 daysÄndrad
Supportrad[email protected][email protected]Ingen ändring
Prioriterad supportingenPriority support is available on request.Tillagd

Två siffror flyttades och en mening lades till. Att återbetalningsfönstret fördubblas från 14 till 30 dagar är den sortens ändring du vill fånga innan den går i produktion, och den är ett enda tecken från att vara osynlig vid en snabb läsning. Det är hela argumentet för att diffa text istället för att lita på dina ögon.

De osynliga skillnaderna som ställer till det för folk

Ibland målar en diff upp två filer som helt olika när de ser identiska ut på skärmen. Orsaken är nästan alltid ett tecken du inte kan se. Här är de vanliga misstänkta.

Osynlig skillnadVar den kommer ifrånVad du ska göra
Radslut: CRLF vs LFEn fil sparades på Windows, den andra på macOS eller LinuxNormalisera radsluten; se konventioner för nyrad
Avslutande blankstegBlanksteg eller tabbar kvarlämnade i slutet av en radTrimma avslutande blanksteg, eller ignorera det om ditt verktyg kan
En byteordningsmarkör (BOM)En editor lade till en osynlig markör på den första radenSpara som UTF-8 utan en BOM
Tabbar vs blankstegOlika editorer eller indenteringsinställningarVälj ett och konvertera; båda ser likadana ut på skärmen
TeckenkodningEn fil är UTF-8, den andra Latin-1, så accenttecken skiljer sig i byteSpara om båda som UTF-8
Icke-brytande blankstegInklistrat från en webbsida eller ett ordbehandlingsprogramSök och ersätt dem med vanliga blanksteg

Den som biter hårdast är radsluten. En Windows-fil använder en vagnretur plus en radmatning (CRLF) i slutet av varje rad; en Mac- eller Linux-fil använder bara en radmatning (LF). Öppna båda i samma editor och de ser likadana ut, men varje enskild rad skiljer sig på byte-nivå, så en naiv diff lyser upp som en julgran. Om hela din fil visas som ändrad, kontrollera det här först.

Kan ChatGPT jämföra två filer?

Ja, och många gör nu exakt det: klistrar in två versioner i ChatGPT (eller en annan AI-assistent) och frågar "vad ändrades?" För korta filer fungerar det bra och ger dig något en vanlig diff inte kan: en sammanfattning på vanligt språk. "Återbetalningsfönstret gick från 14 till 30 dagar och en rad om prioriterad support lades till" är ofta mer användbart för en upptagen läsare än en vägg av rött och grönt.

Haken är precisionen. En språkmodell är inte en diff-algoritm. Den kan missa en ändring på ett tecken, tyst omformulera en rad medan den sammanfattar, eller få slut på utrymme på en lång fil och hoppa över mitten. Det innebär också att lämna över din text till en tredje part, vilket du kanske inte vill för något känsligt. Så de två sorternas verktyg är komplement, inte rivaler.

Ett bra arbetsflöde: kör först filerna genom ett deterministiskt diff-verktyg för att få den exakta, teckennoggranna listan över ändringar, klistra sedan in den korta listan i en AI-chattbot och be den förklara effekten på vanligt språk. Du får diffens noggrannhet och sammanfattningens läsbarhet, utan att lita på att någon av dem gör den andras jobb.

Att jämföra filer på kommandoraden

Om filerna redan finns på disk är det inbyggda kommandot diff en enda rad:

diff old.txt new.txt

Lägg till -u för det enhetliga format som Git använder, eller -w för att ignorera skillnader i blanksteg. För filer i ett repositorium gör git diff old.txt new.txt samma sak med färg och markering på ordnivå. Webbläsarverktyget är den terminalfria versionen av det här: klistra in, läs, klart.

Relaterade verktyg

Vanlig text är sällan det enda du jämför. Om dina filer är strukturerade läses en formatmedveten vy bättre: jämför JSON hanterar omkastade nycklar och indenteringsbrus, och jämför CSV ställer upp rader och kolumner. Att städa upp en rörig lista innan du diffar den är ett jobb för ta bort dubblettrader och sortera rader.

Vanliga frågor

Laddar en online-jämförelse av textfiler upp dem någonstans?
På comparetext.org körs jämförelsen i din webbläsare. Båda filerna diffas av JavaScript på din egen maskin, så inget skickas till en server om du inte medvetet klickar på Spara eller Dela. Det gör det säkert för utkast, avtal, konfiguration och allt annat du inte vill klistra in på en sida som laddar upp vid varje tangenttryckning.
Varför visar mina två textfiler varje rad som olik?
Nästan alltid är det radsluten. En fil sparades på Windows (CRLF) och den andra på macOS eller Linux (LF), så varje rad skiljer sig på byte-nivå trots att de ser identiska ut. En dold byteordningsmarkör (BOM) på första raden eller tabbar kontra blanksteg kan göra samma sak. Normalisera radsluten och spara om båda som UTF-8, diffa sedan igen.
Kan jag jämföra två textfiler utan att installera något?
Ja. Öppna textjämförelseverktyget, klistra in en fil till vänster och den andra till höger, eller använd Ladda upp för att läsa in dem från disk. Diffen dyker upp direkt, i webbläsaren, med ändrade rader markerade. Det finns inget att ladda ner och inget konto att skapa.
Kan ChatGPT jämföra två filer åt mig?
Det kan den, och det är praktiskt för en sammanfattning på vanligt språk av vad som ändrats i korta filer. Men en språkmodell är inte en diff-algoritm: den kan missa en liten ändring, omformulera en rad medan den sammanfattar, eller hoppa över mitten av en lång fil. För en exakt, teckennoggrann jämförelse, använd ett diff-verktyg och lämna sedan resultatet till en AI om du vill ha det förklarat i ord.
Hur jämför jag två filer och ignorerar blanksteg?
På kommandoraden ignorerar diff -w old.txt new.txt skillnader i blanksteg, och diff -b ignorerar ändringar i mängden blanksteg. I en webbläsare, trimma avslutande blanksteg och normalisera radsluten innan du klistrar in, eftersom det är de blankstegsändringar som oftast skräpar ner en diff. Målet är att bara lämna kvar de ändringar som ändrar betydelsen.
Vad är skillnaden mellan att jämföra text och att jämföra kod?
Mekaniken är densamma: båda ställer upp matchande rader och flaggar resten. Skillnaden är vad som räknas som en verklig ändring. I löpande text kan ett ombrutet stycke se ut som en stor redigering när bara ett ord flyttats. I kod spelar indentering och en flyttad funktion roll. En formatmedveten vy som JSON-jämförelse eller en språkmedveten editor minskar det bruset för strukturerade filer.

Redo att testa? Klistra in dina två filer i textjämförelseverktyget och se vad som ändrats.