¿La forma más rápida y básica de reemplazar "\r\n" por "\n" en un archivo?

¿La forma más rápida y básica de reemplazar "\r\n" por "\n" en un archivo?

Supongo que tres un método más básico y, por lo tanto, probablemente una forma más rápida de reemplazar cosas dentro de un archivo determinado.

Sin embargo, tr sólo puede reemplazar cantidades iguales de caracteres. significado...

2 caracteres solo se pueden reemplazar con 2 caracteres, lo que significa reemplazar

\r\ncon \nestá fuera de discusión a través detr

¿Cuál es la siguiente mejor opción sed?

¿Es sed la forma más básica y rápida de reemplazar \r\nun \narchivo dada la falta de capacidades en tr?

Me gustaría un ejemplo si es posible.

Respuesta1

Con sed, puedes hacer:

sed 's/\r$//'

Lo mismo puedes hacer con tr, solo tienes que eliminar \r:

tr -d '\r'

aunque esto eliminarátodoinstancias de \r, no necesario seguido de \n.

Respuesta2

O usardos2unix

Por ejemplo:

$ 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

podemos ver reemplazar \r\ncon\n

información relacionada