Har du någonsin skickat en textfil som skapats på ett Linux-system till någon och låt dem klaga på att det såg fel ut på macOS eller Windows? Det kan bero på att dessa system hanterar linjeslut på olika sätt. Lyckligtvis är det enkelt att fixa det med ett par verktyg: Dos2Unix och Unix2Dos.

Vad är det med Line Endings?

En skillnad mellan Windows och Linux som kan göra det svårt att utbyta filer är hur de räknar radslut. Det här går tillbaka till de dagar då datorer använde teletypmaskiner för in- och utmatning, som i själva verket var automatiska skrivmaskiner.

En ny linje, även kallad linjematning, flyttar papperet en rad och vagnretur flyttas till början av raden. Kommandoradsgränssnitt bärs på denna konvention för tolkning av nya rader.

Windows ärvde MS-DOS-konventionen att räkna en ny linje och en vagnretur som en rad, medan Linux i sin tur bar Unix-traditionen att bara räkna nya rader som, ja, nya rader.

För det mesta är textredigerare tillräckligt smarta för att kunna upptäcka filer som skapats på olika system och justera skärmen därefter, men du kan fortfarande stöta på problem ibland. Du kan försöka köra ett skript och tolken kan kasta ett fel eftersom det förväntar sig att rader ska sluta annorlunda.

instagram viewer

Använda Dos2Unix och Unix2Dos

Lyckligtvis finns det ett par verktyg som låter dig konvertera radslut i filer mellan format. De kallas Dos2Unix och Unix2Dos.

Även om dessa verktyg är vanliga på många Linux-installationer kan du ladda ner dem med standardpakethanteraren om de inte är installerade på ditt system.

För att konvertera en fil som skapats på ett Windows-system till Linux, använd dos2unix:

dos2unix-fil

...var fil är namnet på filen som du vill konvertera. Detta program kommer att konvertera filen från DOS newlines till Unix på plats, som namnet antyder. Om du vill konvertera en kopia av filen använder du -n alternativ:

dos2unix -n file1 file2

...var fil1 och fil2 är namnen på originalfil och den utdatafil. Unix2dos-kommandot fungerar på samma sätt och tar samma argument.

Ett alternativ är att använda a textredigerare på antingen Linux eller Windows för att konvertera filer, eftersom de också kan upptäcka och ändra beteende för radslut.

Relaterad: Unix vs. Linux: Skillnaderna mellan och varför det spelar roll

Nu ser dina textfiler rätt ut i alla system

Med detta par verktyg kan du se till att alla textfiler fungerar på antingen Windows eller Linux. Att fixa nya rader är nu enklare än någonsin med dos2unix och unix2dos.

I den verkliga världen behöver Linux-användare och Windows-användare ofta dela filer. Lyckligtvis är det väldigt enkelt att göra det idag.

E-post
Hur man överför och delar filer mellan Windows och Linux

Flyttar du från Windows till Linux och behöver kopiera data över? Använd dessa knep för att överföra eller dela filer från Windows till Linux.

Läs Nästa

Relaterade ämnen
  • Linux
  • MS-DOS
  • Unix
Om författaren
David Delony (27 artiklar publicerade)

David är en frilansskribent baserad i nordvästra Stillahavsområdet, men ursprungligen från Bay Area. Han har varit teknikentusiast sedan barndomen. Davids intressen inkluderar att läsa, titta på TV-program och filmer av hög kvalitet, retrospel och skivinsamling.

Mer från David Delony

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!

Ett steg till…!

Bekräfta din e-postadress i e-postmeddelandet som vi just skickade till dig.

.