Czy kiedykolwiek wysłałeś komuś plik tekstowy utworzony w systemie Linux i kazałeś mu narzekać, że wyglądał źle w systemie MacOS lub Windows? Może to wynikać z tego, że te systemy inaczej radzą sobie z zakończeniami linii. Na szczęście można to łatwo naprawić za pomocą kilku narzędzi: Dos2Unix i Unix2Dos.
O co chodzi z zakończeniami linii?
Jedną z różnic między systemami Windows i Linux, która może utrudnić wymianę plików, jest sposób liczenia końcówek linii. Wywodzi się to z czasów, kiedy komputery używały dalekopisów do wprowadzania i wyprowadzania danych, które w rzeczywistości były automatycznymi maszynami do pisania.
Nowy wiersz, zwany także wysuwem wiersza, przesuwa papier o jeden wiersz, a powrót karetki przesuwa się na początek wiersza. Interfejsy wiersza poleceń opierały się na tej konwencji interpretowania nowych wierszy.
Windows odziedziczył konwencję MS-DOS liczenia nowego wiersza i powrotu karetki jako jednego wiersza, podczas gdy Linux z kolei przejął tradycję uniksową liczenia nowych wierszy jako, no cóż, nowych wierszy.
W większości przypadków edytory tekstu są wystarczająco inteligentne, aby wykrywać pliki utworzone w różnych systemach i odpowiednio dostosowywać wyświetlanie, ale czasami mogą wystąpić problemy. Możesz spróbować uruchomić skrypt, a interpreter może zgłosić błąd, ponieważ oczekuje, że wiersze będą się kończyć inaczej.
Korzystanie z Dos2Unix i Unix2Dos
Na szczęście istnieje kilka narzędzi, które pozwalają konwertować zakończenia linii w plikach między formatami. Nazywają się Dos2Unix i Unix2Dos.
Chociaż te narzędzia są powszechne w wielu instalacjach systemu Linux, jeśli nie są one zainstalowane w twoim systemie, możesz je pobrać za pomocą domyślnego menedżera pakietów.
Aby przekonwertować plik utworzony w systemie Windows na Linux, użyj dos2unix:
plik dos2unix
...gdzie plik to nazwa pliku, który chcesz przekonwertować. Ten program przekonwertuje plik z nowych linii DOS na Unix, jak sama nazwa wskazuje. Jeśli chcesz przekonwertować kopię pliku, użyj -n opcja:
dos2unix -n plik1 plik2
...gdzie plik1 i plik2 są imiona oryginalny plik i plik wyjściowy. Polecenie unix2dos działa w ten sam sposób i przyjmuje te same argumenty.
Alternatywną opcją jest użycie edytor tekstu na każdym Linuksie lub Windows do konwersji plików, ponieważ mogą one również wykrywać i zmieniać zachowanie końca linii.
Związane z: Unix kontra Linux: różnice między i dlaczego ma to znaczenie
Teraz Twoje pliki tekstowe wyglądają dobrze w dowolnym systemie
Dzięki tej parze narzędzi możesz upewnić się, że każdy plik tekstowy będzie działał w systemie Windows lub Linux. Naprawianie nowych linii jest teraz łatwiejsze niż kiedykolwiek dzięki dos2unix i unix2dos.
W prawdziwym świecie użytkownicy Linuksa i Windowsa często muszą udostępniać pliki. Na szczęście w dzisiejszych czasach jest to bardzo łatwe.
Przenosisz się z systemu Windows na Linux i musisz skopiować dane? Użyj tych sztuczek, aby przesyłać lub udostępniać pliki z systemu Windows do systemu Linux.
Czytaj dalej
- Linux
- MS-DOS
- Uniksa

David jest niezależnym pisarzem mieszkającym w północno-zachodnim Pacyfiku, ale pierwotnie pochodzi z Bay Area. Od dzieciństwa jest entuzjastą technologii. Zainteresowania Davida obejmują czytanie, oglądanie wysokiej jakości programów telewizyjnych i filmów, gry retro i zbieranie płyt.
Zapisz się do naszego newslettera
Dołącz do naszego biuletynu, aby otrzymywać wskazówki techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Jeszcze jeden krok…!
Potwierdź swój adres e-mail w wiadomości e-mail, którą właśnie wysłaliśmy.