• Быстрый переход
  • Рубрики
  • Свежие записи
  • Метки
  • Архивы
  • Реклама 1
  • Реклама 2
  • Рейтинг@Mail.ru

    Удаление символов ^M с помощью sed


    Все время забываю синтаксис sed для удаления символов переноса строк ^M формата DOS, которые можно встретить в текстовых файлах после редактированиях в windows редакторах.

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

    Символы переноса строк ^M, которые следует удалить, можно получить в консоли набрав комбинацию на клавиатуре:  сначала control + V и следом за этим control + M

    Вот так выглядят переносы ^M в текстовом редакторе mcedit:


    Синтаксис sed для удаления ^M следующий
    sed 's/'"$(printf '\015')"'$//g' имя_файла

    Также можно еще так:

    find . -type f | xargs -n1 sed -i » -e ‘s/^M$//’

    или так

    find . -type f | xargs -n1 sed -i -e ‘s/^M$//’

    тогда создадутся копии исходных файлов с -е в конце имени ^M в bash можно набрать нажав CTRL+V+M

    Ну и самый простой вариант это установка с портов пакета:

    /usr/ports/converters/dosunix

    Автор: admin, 5 июня 2011
    Рубрики: OS FreeBSD, Новости
    Метки: , , , , , , ,
    Есть 1 комментарий. к сообщению: “Удаление символов ^M с помощью sed”
    1. aleshgo:

      sed s/$’\r’\$//g — будет по меньше

    Написать комментарий

    Последние статьи