EOL: Как да конвертирате текстов файл от тип DOS в UNIX и обратно

Изберете DOS, меню на Unix текстов редактор

С това просто настойнически, решаваме малка злополука, която със сигурност ще се е случило с вас. Много пъти ни се е случвало, че при отваряне на .txt файл в Linux или Windows текстът се променя от начина, по който го бяхме редактирали в началото. Това, което се случва, е, че линиите са се присъединили към нас и интервалите не се появяват. Това е така, защото форматът на текстовия файл тип UNIX се различава от типа DOS по отношение на характера на край на реда (EOL) че те наемат.

За UNIX системите символът е "подаване на линия / нов ред" или LF и това съответства на \ n, ако програмирате, ще ви звучи. Докато в Windows системата, използвана в стария DOS, се наследява, тоест „връщане на карета“, последвано от „подаване на линия / нова линия“ (\ r \ n). Ако например сме редактирали файла в Linux и го отваряме с Windows (а форматът, в който сме го запазили, не е подходящ), тогава ще има щастливият проблем да бъде поставен целият текст без място или прекъсвания на редове.

В Linux е лесно да конвертирате от един формат в друг без да инсталирате нищо в нашата система, просто използвайте тези команди:

  • ОТ DOS ДО UNIX:

Ще използваме командата tr, последвано от параметъра -d и съответния знак EOL. Също така ще използваме известните „тръби“, за да работим с DOS текстовия файл („име на файл“) и този, който искаме да генерираме, преобразуван във формат UNIX („име на файла“). Разбира се, първо трябва да използваме командата cd, за да отидем в папката, където се намира файлът, който трябва да се преобразува, или от графичния интерфейс да предадем файла на / Home (по подразбиране, където се намира подканата):

tr -d '\n' < nombre_archivo > nombre_fichero</p>
  • ОТ UNIX ДВЕ:

Сега ще използваме командата жажда за преобразуване на Unix файл в DOS тип. За това ще използваме следния синтаксис, замествайки името на файловете за файла, който трябва да бъде преобразуван. Искам да направя разяснение, когато пиша файл, имам предвид Unix тип и когато поставям файл в Windows / DOS тип.

sed 's/$/\r/' nombre_fichero > nombre_archivo</p>

Както и да е, в съвременните текстови редактори вече ни дава опцията „Запазване като”Във формата, който искаме, без да се налага да го правим от терминала. Но винаги е хубаво да имате по-добро разбиране за командния ред на Linux. Друга възможност е да се използват два инструмента, предназначени за тази цел, dos2unix и unix2dos, но в много дистрибуции те не са инсталирани по подразбиране и трябва да бъдат инсталирани ...


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорник за данните: AB Internet Networks 2008 SL
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.

  1.   блабла1233445 каза той

    Правилното твърдение е
    tr -d 'r' име на файла