Пращали ли сте някога текстов файл, създаден в Linux система, на някого и той да се оплаква, че е изглеждал погрешно в macOS или Windows? Това може да се дължи на това, че тези системи обработват различните окончания на линии. За щастие това е лесно да се поправи с няколко помощни програми: Dos2Unix и Unix2Dos.

Каква е сделката с окончания на редове?

Една разлика между Windows и Linux, която може да затрудни обмена на файлове, е начинът, по който те броят завършванията на редовете. Това датира от дните, когато компютрите са използвали телетайп машини за въвеждане и извеждане, които са били на практика автоматични пишещи машини.

Нова линия, наричана още линия за подаване, премества хартията с една линия и връщането на каретката се премества в началото на линията. Интерфейси на командния ред, изпълнени на тази конвенция за тълкуване на нови редове.

Windows наследи конвенцията MS-DOS за преброяване на нов ред и връщане на карета като един ред, докато Linux от своя страна носеше традицията на Unix просто да брои нови редове, както и нови редове.

instagram viewer

През повечето време текстовите редактори са достатъчно интелигентни, за да могат да откриват файлове, създадени в различни системи, и да регулират дисплея по съответния начин, но все пак може да срещате проблеми понякога. Можете да опитате да стартирате скрипт и интерпретаторът може да изведе грешка, защото очаква редове да завършват по различен начин.

Използване на Dos2Unix и Unix2Dos

За щастие има няколко помощни програми, които ви позволяват да конвертирате окончания на редове във файлове между формати. Те са извикани Dos2Unix и Unix2Dos.

Въпреки че тези помощни програми са често срещани при много инсталации на Linux, ако не са инсталирани на вашата система, можете да ги изтеглите с помощта на мениджъра на пакети по подразбиране.

За да конвертирате файл, създаден в система с Windows, в Linux, използвайте dos2unix:

dos2unix файл

...където файл е името на файла, който искате да конвертирате. Тази програма ще преобразува файла от DOS нови редове в Unix на място, както подсказва името. Ако искате да конвертирате копие на файла, използвайте опция:

dos2unix -n файл1 файл2

...където файл1 и файл2 са имената на оригинален файл и изходния файл. Командата unix2dos работи по същия начин и приема същите аргументи.

Алтернативен вариант е да се използва a текстов редактор на Linux или Windows за конвертиране на файлове, тъй като те също могат да откриват и променят поведението, завършващо на реда.

Свързани: Unix срещу Linux: Разликите между и защо е важно

Сега вашите текстови файлове изглеждат правилно на всяка система

С тази двойка помощни програми можете да сте сигурни, че всеки текстов файл ще работи или на Windows, или на Linux. Поправянето на нови редове вече е по-лесно от всякога с dos2unix и unix2dos.

В реалния свят потребителите на Linux и потребителите на Windows често трябва да споделят файлове. За щастие е много лесно да се направи това в наши дни.

електронна поща
Как да прехвърляте и споделяте файлове между Windows и Linux

Преминавате от Windows към Linux и трябва да копирате данни? Използвайте тези трикове за прехвърляне или споделяне на файлове от Windows към Linux.

Прочетете Напред

Свързани теми
  • Linux
  • MS-DOS
  • Unix
За автора
Дейвид Делони (27 статии публикувани)

Дейвид е писател на свободна практика, базиран в северозападната част на Тихия океан, но първоначално идва от района на залива. От детство е ентусиаст на технологиите. Интересите на Дейвид включват четене, гледане на качествени телевизионни предавания и филми, ретро игри и събиране на записи.

Още от Дейвид Делони

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и ексклузивни оферти!

Още една стъпка…!

Моля, потвърдете имейл адреса си в имейла, който току-що ви изпратихме.

.