Перевод строки windows linux

Содержание
  1. Как преобразовать DOS или Windows перевод строки (возврата каретки и перевода строки) в Unix перевод строки (LF) в bash-скрипт?
  2. Ответы — Как преобразовать DOS или Windows перевод строки (возврата каретки и перевода строки) в Unix перевод строки (LF) в bash-скрипт? / How to convert DOS/Windows newline (CRLF) to Unix newline (LF) in a Bash script?
  3. linux символ переноса строки
  4. Содержание
  5. Терминология
  6. Способы представления
  7. Конвертирование
  8. Ссылки
  9. как добавить перенос строки
  10. Re: как добавить перенос строки
  11. Re: как добавить перенос строки
  12. Re: как добавить перенос строки
  13. Re: как добавить перенос строки
  14. Re: как добавить перенос строки
  15. Re: как добавить перенос строки
  16. Re: как добавить перенос строки
  17. Re: как добавить перенос строки
  18. Re: как добавить перенос строки
  19. Re: как добавить перенос строки
  20. Re: как добавить перенос строки
  21. Re: как добавить перенос строки
  22. Re: как добавить перенос строки
  23. Re: как добавить перенос строки
  24. Новая строка
  25. Новая строка
  26. Содержание
  27. Общие сведения
  28. Терминология
  29. Представления и реализации
  30. Краткие сведения
  31. Основные цифровые реализации
  32. Перевод строки в Unicode
  33. Трудности
  34. История
  35. Примечания
  36. Дополнительные источники
  37. Смотреть что такое «Новая строка» в других словарях:

Как преобразовать DOS или Windows перевод строки (возврата каретки и перевода строки) в Unix перевод строки (LF) в bash-скрипт?

Как я могу программно (то есть, не используя vi ) преобразовать DOS/Windows newlines в Unix?

Команды dos2unix и unix2dos недоступны в некоторых системах. Как я могу эмулировать их с помощью таких команд, как sed / awk / tr ?

Ответы — Как преобразовать DOS или Windows перевод строки (возврата каретки и перевода строки) в Unix перевод строки (LF) в bash-скрипт? / How to convert DOS/Windows newline (CRLF) to Unix newline (LF) in a Bash script?

Используя AWK вы можете сделать:

Используя Perl вы можете сделать:

Вы можете использовать tr для преобразования из DOS в Unix; однако вы можете сделать это безопасно только в том случае, если CR появляется в вашем файле только как первый байт пары байтов CRLF. Так обычно и бывает. Затем вы используете:

Обратите внимание, что имя DOS-file отличается от имени UNIX-file ; если вы попытаетесь использовать одно и то же имя дважды, вы не получите никаких данных в файле.

Вы не можете сделать это наоборот (со стандартным ‘tr’).

Если вы знаете, как ввести возврат каретки в скрипт ( control-V , control-M для ввода control-M), то:

где ‘^M ‘ — это символ control-M. Вы также можете использовать механизм bash ANSI-C Quoting для указания возврата каретки:

Однако, если вам придется делать это очень часто (грубо говоря, несколько раз), гораздо разумнее установить программы преобразования (например dos2unix и unix2dos , или, возможно dtou и utod ) и использовать их.

посмотрите здесь примеры использования sed :

Используйте sed -i для преобразования на месте, например sed -i ‘s/. /’ file .

Решения, опубликованные до сих пор, касаются только части проблемы , преобразования CRLF DOS/Windows в LF Unix; часть, которую они упускают, состоит в том, что DOS использует CRLF в качестве разделителя строк , в то время как Unix использует LF в качестве Терминатора строк . Разница в том, что файл DOS (обычно) не будет иметь ничего после последней строки в файле, в то время как Unix будет. Чтобы правильно провести конвертацию, вам необходимо добавить этот final LF (если только файл не имеет нулевой длины, т. е. в нем вообще нет строк). Мое любимое заклинание для этого (с небольшой добавленной логикой для обработки файлов, разделенных CR в стиле Mac, а не файлов, которые уже находятся в формате unix) — это немного perl:

Обратите внимание, что это отправляет Unixified версию файла в stdout. Если вы хотите заменить файл на Unixified версию, добавьте флаг perl -i .

linux символ переноса строки

Содержание

Перевод строки, или разрыв строки — продолжение печати текста с новой строки, то есть с левого края на строку ниже, или уже на следующей странице.

Терминология

Способы представления

Способ представления перевода строки в текстовом файле часто зависит от используемой операционной системы:

Читайте также:  Как сделать скриншот экрана ноутбука windows

Конвертирование

Способы конвертирования файла:

Файл → Сохранить как… → Конец строки → …

Ссылки

© 2012 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.

В более-менее продвинутых текстовых редакторах (Akelpad, Sublime text, Notepad++ и т.п.) обычно можно выбирать символ конца строки.

А по поводу генерации текстового файла средствами PHP — смотря как именно туда записываете конец строки. Если константой PHP_EOL — то будет на линуксе LF, на винде CRLF. А если вручную ставить символы конца строки — то какие запишете, те и будут.

Ещё одна тривиальная задача, но, как выяснилось, не всем известно её решение. Итак, сегодня мы поговорим о переводе строки в Linux. Есть *nix, на который мы wget-ом, например, вытащили текстовик (конфигурационный файл, скрипт…), созданный на компьютере под управлением Windows. Дело в том, что в Windows системах перенос строки обозначается двумя символами — CR и LF, а в Linux-е только CR (возврат каретки). Соответственно, файл в терминале будет выглядеть примерно так:

Вот эти ^M в конце каждой строки — это и есть лишний символ, доставшийся нам от Windows. В случае с CSS — ничего страшного не случится, но если это стартовый скрипт, например, из статьи про SSHGuard — работать он не будет. Для того, чтобы исправить ситуацию существует множество решений, конечно, но с моей точки зрения есть два наиболее изящных. Первое решение подойдёт тем, у кого на Linux-машине установлен интерпретатор Perl. Вот он:

perl -pi -e ‘s/
/
/;’ filename

Второй же вариант реализуется исключительно средствами командной оболочки bash:

cat filename.in | col -b > filename.out

Оба варианта работоспособны полностью, но я предпочитаю второй, так как он оставляет нетронутым оригинальный файл на случай, если что-то пойдёт не так.

как добавить перенос строки

Подскажите, как в bash в конец текствого файла добавить перенос на новую строку?

Re: как добавить перенос строки

Ты уже утомил дурными вопросами. Это просто неуважение к форуму.

Re: как добавить перенос строки

Солидарен с sdio. Попробуй хотя бы книжку какую-нибудь почитать.

Re: как добавить перенос строки

Вот нада все подобные вопросы закинуть в FAQ, и потом кричать: В FAQ с****ы дети (с)LOR

Re: как добавить перенос строки

Закидывай, к lor-wiki у тебя доступ есть.

Re: как добавить перенос строки

😀
В голову пришло:
for i in `cat 1`; do echo «$i» >> 2; done; echo «» >> 2; mv 2 1

Re: как добавить перенос строки

ну ессно 1 это у нас файл в котором нужно добавить пуструю строку в конец

Re: как добавить перенос строки

что-то у тебя как-то сложно или я задачу не правильно понял мне по описанию задачи в голову пришло только echo -e «\n» >> file

Re: как добавить перенос строки

=)
Да че первое в голову пришло то и написал

Re: как добавить перенос строки

Re: как добавить перенос строки

-en, а то два переноса добавишь

Re: как добавить перенос строки

угу, верно, признаю косяк

Re: как добавить перенос строки

Re: как добавить перенос строки

Ищешь код перевода строки в /dev/random и добавляешь его в файл.

Re: как добавить перенос строки

Тоже хорошо. Созерцать на берегу реки, как мимо проплывают разные символичные, но непостижимые фигуры и когда-нибудь мимо убеленного благородными сединами старца прошествует Истинный Знак. То будет Знак перевода строки. Он увидит его не подымая век. К тому времени он уже сможет мимолетным движением брови вставлять любые знаки в между небесными кварками. Но не сделает этого ибо не захочет входить вновь в кармический круговорот.

Новая строка

Новая строка

Новая строка или перевод строки или перенос строки или разделитель строк или символ конца строки (EOL) в информатике — специальный управляющий символ (или их последовательность), служащий для завершения или разделения строк в текстовых данных.

Содержание

Общие сведения

Название закрепилось из-за того, что следующий символ после разделителя печатается уже на новой строке, то есть на следующей строке, расположенной ниже текущего текста, сразу следующей за разделителем. В виде символов представляют «новую строку» по-разному, в зависимости от аппаратной платформы и операционной системы, что может стать потенциально проблемой при обмене данными между системами с различными представлениями форматирования текста.

Читайте также:  Windows x86 или x64 чем отличаются

Следует различать ситуации, когда «новая строка» завершает строки, а когда — разделяет их. Если «новая строка» подразумевает отделение строк, то знак «новой строки» не ставится после последней строки файла. По общему соглашению, в большинстве систем «новая строка» добавляется даже после последней строки, то есть трактуют «новую строку» как окончание строки. Некоторые программы имеют трудности с обработкой последней строки файла, если он не заканчивается символом новой строки. И наоборот, программы, ожидающие «новую строку» чтобы использовать ее как разделитель, интерпретируют последнюю «новую строку» как начало новой (пустой) строки. Это может привести к различиям в подсчете строк в файле, но во всем остальном это, в общем-то, безвредно.

В текстах, предназначенных для чтения людьми при помощи программ, использующих переносы слов, символ «новой строки» обычно необходим, только если перенос строки должен быть независим от положения следующего слова на этой же строке, как, например, между параграфами и вертикальными списками (см. жёсткий возврат и мягкий возврат)

Терминология

Но́вая строка́ (калька с англ. new line , зд. «с новой строки») — понятие логического форматирования текста в текстовом процессоре, браузере и т.д. Как правило (хотя и не обязательно), новая строка начинает запись текста с нового абзаца (англ. hard return ). Новая строка подразумевает обязательный перевод строки в соответственном месте текста, хотя «переводы строки» вообще имеются и внутри абзаца.

Возвра́т каре́тки (англ. Carriage Return, CR ) — управляющий символ ASCII 0x0D, при выводе которого курсор перемещается к левому краю поля, не меняя высоту. Этот управляющий символ вводится клавишей «Enter». Будучи записан в файле, в отдельности рассматривается как перевод строки только в системах Macintosh.

Пода́ча строки́ (от англ. Line Feed, LF «подача [бумаги] на строку») — управляющий символ ASCII 0x0A, при выводе которого «курсор» перемещается на следующую строку.

В случае принтера это означает сдвиг бумаги вверх, в случае дисплея — сдвиг курсора вниз если ещё осталось место, и прокрутку текста вверх если курсор находится на нижней строке.

Возвращается ли при этом курсор к левому краю или нет, зависит от реализации.

Таким образом, вывод последовательности CR LF в семантике терминала гарантирует действие «создание новой строки».

Терминалы (и их эмуляторы) могут также проводить различные преобразования символов (например, «LF» → «CR LF», «CR» → «CR LF») при вводе и выводе текста.

Представления и реализации

Программные приложения и операционые системы обычно представляют «новую строку» в виде одного или двух управляющих символов.

Краткие сведения

Системы, основанные на ASCII или совместимом наборе символов, используют или LF (от англ. Line feed (перевод строки), 0x0A) или CR (от англ. Carriage Return, 0x0D) по отдельности, или CR следует за LF (CR+LF, 0x0D 0x0A); см. ниже историческую причину для соглашения CR+LF. Эти символы основаны на командах принтера: перевод строки означает, что одна строка на бумаге должна быть перенесена при печати, а возврат каретки означает, что каретка печатающего устройства должна вернуться к началу текущей строки.

Основные цифровые реализации

  • LF (ASCII 0x0A) — используется в Multics, Unix и Unix-подобных операционнах системах (GNU/Linux, AIX, Xenix, Mac OS X, FreeBSD и др.), BeOS, Amiga, RISC OS и других
  • CR (ASCII 0x0D) — используется в машинах Commodore, Apple II, Mac OS до версии 9 и OS-9
  • CR + LF (ASCII 0x0D 0x0A) — используется в DECRT-11 и большинстве остальных доюниксовых систем, несовместимых с IBM OS, а также в CP/M, MP/M, DOS, OS/2, Microsoft Windows, Symbian OS, протоколах internet.

Перевод строки в Unicode

По стандарту, любое совместимое с Юникодом приложение должно воспринимать как перевод строки каждый из нижеследующих символов:

  • LF: подача строки, U+000A
  • CR: возврат каретки, U+000D
  • NEL: новая строка, U+0085
  • FF: новая страница, U+000C
  • LS: разделитель строк, U+2028
  • PS: разделитель абзацев, U+2029
Читайте также:  Настроить разрешение экрана windows 10 вручную

Последовательность CR LF (U+000D U+000A) надлежит воспринимать как один перевод строки (а не два) [1] .

Трудности

  • Нет общепринятых сокращений русских терминов. ВК (Возврат Каретки) опасно совпадает по написанию с сокращением от англ.BreaK («разрыв [строки]», то же, что Перевод строки), а ПС не различает Подачу Строки и Перевод Строки.
  • Юникод старается примирить разницу представлений перевода строки, уравнивая CR, LF и CR LF, однако вступает в противоречие с наследуемым ASCII при трактовке LF CR, не предварённых CR: согласно ASCII это один перевод строки, а согласно Юникоду — два. Вероятно, Юникод сделал ставку на не существовавшие в ASCII разделители строк и абзацев, но они не прижились.
  • В зависимости от того, считать ли перевод строки её частью (завершителем) или не считать (считая их разделителем), после последней строки его ставят или нет. При пренебрежении одной из этих возможностей во время декодирования конец текста может стать неожиданным или появится лишняя пустая строка. Для сравнения, точка с запятой в Си команды завершает, а в Паскале разделяет.

История

На механических пишущих машинках имелся рычаг для возврата каретки к левому краю текста. При его использовании специальный механизм прокручивал вал, подвигая бумагу вверх для освобождения места для новой строки.

На АЦПУ функции возврата каретки (головки) и подачи новой строки были разделены, откуда традиция представления перевода строки как CR LF перешла и к текстовым файлам.

Некоторые исторические цифровые системы записи текста (например, при помощи перфокарт) вообще не использовали символ перевода строки.

Примечания

Дополнительные источники

  • The Unicode reference, see paragraph 5.8 in Chapter 5 of the Unicode 4.0 standard (PDF)
  • «The End-of-Line Story»
  • The [NEL] Newline Character
  • The End of Line Puzzle
  • Tofrodos — software for Unix that converts to and from DOS newlines
  • ToFroWin: a Windows shell extension that is able to convert multiple files from DOS to UN*X (and vice-versa) line endings right from the context menu.

Wikimedia Foundation . 2010 .

Смотреть что такое «Новая строка» в других словарях:

Новая судейская система (фигурное катание) — Новая судейская система (англ. New Judging System (NJS), также Судейская система ИСУ, англ. ISU Judging System[1]) действующая система оценок для мужского и женского одиночного фигурного катания, парного катания, спортивных танцев … Википедия

Новая волна 2011 — Дата проведения 26 июля 31 июля … Википедия

Красная строка — вся прописная, заголовок, или новая строка … Энциклопедический словарь Ф.А. Брокгауза и И.А. Ефрона

New line — Новая строка … Краткий толковый словарь по полиграфии

Перенос строки — Новая строка или перевод строки или перенос строки или разделитель строк или символ конца строки (EOL) в информатике специальный управляющий символ (или их последовательность), служащий для завершения или разделения строк в текстовых данных.… … Википедия

Подача строки — Новая строка или перевод строки или перенос строки или разделитель строк или символ конца строки (EOL) в информатике специальный управляющий символ (или их последовательность), служащий для завершения или разделения строк в текстовых данных.… … Википедия

Разделитель строк — Новая строка или перевод строки или перенос строки или разделитель строк или символ конца строки (EOL) в информатике специальный управляющий символ (или их последовательность), служащий для завершения или разделения строк в текстовых данных.… … Википедия

АБЗАЦ — (нем. Absatz от ab от и setzen класть, ставить.). Начало текста, новая строка при типографском наборе букв. Словарь иностранных слов, вошедших в состав русского языка. Чудинов А.Н., 1910. АБЗАЦ нем. Absatz, от ab, от, и setzen, класть, ставить.… … Словарь иностранных слов русского языка

TELNET — Название: Teletype network Уровень (по модели OSI): Прикладной Семейство: TCP/IP Порт/ID: 23/TCP Назначение протокола: виртуальный текстовый терминал Спецификация: RFC 854 / STD 8 … Википедия

Date — утилита Unix для работы с системными часами. Выводит текущую дату и время в различных форматах и позволяет устанавливать системное время. Содержание 1 Использование 2 Ключи 3 См. также … Википедия

Оцените статью