Самый быстрый и основной способ заменить «\r\n» на «\n» в файле?

Самый быстрый и основной способ заменить «\r\n» на «\n» в файле?

Я полагаю, trчто это более простой метод и, следовательно, более быстрый способ замены элементов в заданном файле.

Однако tr может заменять только равное количество символов. Значение...

2 символа можно заменить только 2 символами, что означает замену

\r\nс \nне может быть и речи черезtr

является ли следующий лучший вариант sed?

является ли sed наиболее простым и быстрым способом замены \r\nв \nфайле, учитывая отсутствие возможностей в tr?

Если возможно, хотелось бы увидеть пример.

решение1

С помощью sedвы можете сделать:

sed 's/\r$//'

То же самое можно сделать и с tr, нужно только удалить \r:

tr -d '\r'

хотя это удалитвсепримеры \r, не обязательно сопровождаемые \n.

решение2

ИЛИ использоватьdos2unix

например:

$ echo -ne "1\r\n2" |  od -A n -t x1
 31 0d 0a 32
$ echo -ne "1\r\n2" | dos2unix | od -A n -t x1
 31 0a 32

мы можем заменить \r\nна\n

Связанный контент