Už jste někdy někomu poslali textový soubor vytvořený v systému Linux a nechali ho stěžovat si, že to vypadalo špatně na macOS nebo Windows? Může to být proto, že tyto systémy zpracovávají konce řádků odlišně. Naštěstí je to snadné opravit pomocí několika nástrojů: Dos2Unix a Unix2Dos.
Jaká je dohoda s konci řádků?
Jedním rozdílem mezi Windows a Linuxem, který může ztěžovat výměnu souborů, je způsob, jakým počítají konce řádků. To sahá až do doby, kdy počítače pro vstup a výstup používaly dálnopisné stroje, což byly ve skutečnosti automatické psací stroje.
Nový řádek, nazývaný také linefeed, posune papír o jeden řádek a návrat vozíku se přesune na začátek řádku. Rozhraní příkazového řádku prováděná na této konvenci interpretace nových řádků.
Windows zdědil konvenci systému MS-DOS spočívající v počítání nového řádku a návratu konce řádku jako jeden řádek, zatímco Linux zase nesl unixovou tradici spočítání pouze nových řádků a nových řádků.
Většinu času jsou textové editory dostatečně chytré, aby dokázaly detekovat soubory vytvořené v různých systémech a podle toho upravit zobrazení, ale občas se můžete setkat s problémy. Můžete zkusit spustit skript a tlumočník může způsobit chybu, protože očekává, že řádky skončí jinak.
Pomocí Dos2Unix a Unix2Dos
Naštěstí existuje několik nástrojů, které vám umožňují převádět konce řádků v souborech mezi formáty. Jsou voláni Dos2Unix a Unix2Dos.
Ačkoli jsou tyto nástroje běžné v mnoha instalacích systému Linux, pokud nejsou nainstalovány ve vašem systému, můžete si je stáhnout pomocí výchozího správce balíčků.
Chcete-li převést soubor vytvořený v systému Windows na Linux, použijte dos2unix:
soubor dos2unix
...kde soubor je název souboru, který chcete převést. Tento program převede soubor z nových řádků systému DOS na unixové, jak název napovídá. Pokud chcete převést kopii souboru, použijte -n volba:
dos2unix -n soubor1 soubor2
...kde soubor1 a file2 jsou jména původní soubor a výstupní soubor. Příkaz unix2dos funguje stejným způsobem a přijímá stejné argumenty.
Alternativní možností je použít a textový editor na obou Linuxech nebo Windows k převodu souborů, protože také mohou detekovat a změnit chování konce řádku.
Příbuzný: Unix vs. Linux: Rozdíly mezi a proč na tom záleží
Nyní vaše textové soubory vypadají správně na jakémkoli systému
Díky této dvojici nástrojů můžete zajistit, aby jakýkoli textový soubor fungoval v systému Windows nebo Linux. Opravy nových řádků jsou nyní dos2unix a unix2dos snadnější než kdy dříve.
Ve skutečném světě musí uživatelé systému Linux a uživatelé systému Windows často sdílet soubory. Naštěstí je to dnes velmi snadné.
Přecházíte z Windows na Linux a potřebujete kopírovat data napříč? Pomocí těchto triků můžete přenášet nebo sdílet soubory z Windows do Linuxu.
Přečtěte si další
- Linux
- MS-DOS
- Unix
David je spisovatel na volné noze se sídlem na severozápadě Pacifiku, původně však pocházející z oblasti zálivu. Od dětství je technologickým nadšencem. Mezi Davidovy zájmy patří čtení, sledování kvalitních televizních pořadů a filmů, retro hraní a sběr záznamů.
Přihlaste se k odběru našeho zpravodaje
Připojte se k našemu zpravodaji s technickými tipy, recenzemi, bezplatnými elektronickými knihami a exkluzivními nabídkami!
Ještě jeden krok…!
V e-mailu, který jsme vám právě poslali, potvrďte svou e-mailovou adresu.