Schnellste und einfachste Möglichkeit, in einer Datei „\r\n“ durch „\n“ zu ersetzen?

Schnellste und einfachste Möglichkeit, in einer Datei „\r\n“ durch „\n“ zu ersetzen?

Ich nehme an, trdass es sich um eine grundlegendere Methode handelt und daher wahrscheinlich eine schnellere Möglichkeit, Dinge innerhalb einer bestimmten Datei zu ersetzen.

Allerdings kann tr nur die gleiche Anzahl von Zeichen ersetzen. Bedeutung ...

2 Zeichen können nur durch 2 Zeichen ersetzt werden, d.h. das Ersetzen

\r\nmit \nkommt nicht in Frage viatr

ist die nächstbeste Option sed?

ist sed angesichts der fehlenden Funktionen in tr die einfachste und schnellste Methode zum Ersetzen \r\nin einer Datei?\n

hätte gerne wenn möglich ein Beispiel.

Antwort1

Mit sedkönnen Sie Folgendes tun:

sed 's/\r$//'

Dasselbe geht mit tr, Sie müssen nur entfernen \r:

tr -d '\r'

obwohl dies entfernen wirdalleFälle von \r, nicht notwendigerweise gefolgt von \n.

Antwort2

ODER verwendendos2unix

Zum Beispiel:

$ 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

wir können sehen, ersetzen \r\ndurch\n

verwandte Informationen