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.
| Metod | Bäst för | Exakt? | Ansträngning |
|---|---|---|---|
| Att läsa dem sida vid sida | Några rader, en uppenbar ändring | Du är domaren | Låg |
| Diff-verktyg online | Snabbkontroller, inklistring var som helst ifrån | Ja, exakt på tecknet | Låg |
Kommandoraden (diff, git diff) | Filer på disk, skript, enorma filer | Ja | Medel |
| Kodeditor (VS Code "Compare") | Filer som redan är öppna i din editor | Ja | Låg |
| AI-chattbot (ChatGPT) | En sammanfattning av ändringen på vanlig svenska | Nej, kan missa eller omformulera | Lå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.
- Öppna textjämförelseverktyget.
- 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.
- 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.
- 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.
- 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:
| Rad | Före | Efter | Ändring |
|---|---|---|---|
| Starttid | 9am | 8am | Ändrad |
| Återbetalningsfönster | 14 days | 30 days | Ändrad |
| Supportrad | [email protected] | [email protected] | Ingen ändring |
| Prioriterad support | ingen | Priority 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 skillnad | Var den kommer ifrån | Vad du ska göra |
|---|---|---|
| Radslut: CRLF vs LF | En fil sparades på Windows, den andra på macOS eller Linux | Normalisera radsluten; se konventioner för nyrad |
| Avslutande blanksteg | Blanksteg eller tabbar kvarlämnade i slutet av en rad | Trimma 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 raden | Spara som UTF-8 utan en BOM |
| Tabbar vs blanksteg | Olika editorer eller indenteringsinställningar | Välj ett och konvertera; båda ser likadana ut på skärmen |
| Teckenkodning | En fil är UTF-8, den andra Latin-1, så accenttecken skiljer sig i byte | Spara om båda som UTF-8 |
| Icke-brytande blanksteg | Inklistrat från en webbsida eller ett ordbehandlingsprogram | Sö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.txtskillnader i blanksteg, ochdiff -bignorerar ä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.