Sustituir los saltos de línea Win por saltos Linux

¿Son todos los saltos de línea iguales?  No señor !  Hay saltos y saltos 🙂  Por ejemplo, los siguientes son saltos típicos de un editor de textos Windows:

Los ^M que aparecen en la imagen son realmente la representación visual de «rn» (carriage return + line feed), es decir, el salto de línea típico de Windows. Un fichero en PHP con esos saltos de línea se pueden ejecutar sin problemas en Linux. Pero cuando los editamos con el Vim (o $EDITOR de confianza), la verdad es que los ^M dan grima. Esto ocurre porque en Linux el salto de línea se representa como n , a secas (sin el r ).  Podemos convertir un fichero con saltos Win a otro con saltos Linux con el comando sed:

sed 's/^M$//' fichero

O bien, si no nos acordamos del conjuro, seguro que nos viene a la memoria el mnemotécnico «fromdos» (de MSDOS a Unix):

  fromdos fichero

que automágicamente detecta y convierte (de MSDOS a Unix o viceversa) el fichero pasado como parámetro. fromdos es un comando del paquete tofrodos.

9 comentarios en «Sustituir los saltos de línea Win por saltos Linux»

  1. También se puede en el editor de textos cambiando lo de UTF-8 ¿no? por ISO-8859-1 (creo, al menos para los html).
    No estoy muy segura, pero bueno, te lo comento por si es así, saberlo también, y si estoy equivocada, pues si me lo aclaras mejor 🙂

    Un saludo

  2. Otro comando similar al «fromdos» es el «dos2unix». En el anterior trabajo solia usarlo (antes de hacer deployments) porque algunos servidores unix se volvian «locos» al intentar entender ficheros javascript que venian editados de windows.
    Saludos!

  3. Amigos, soy usuario de windows y me pregunto si hay una forma de evitar crear esos saltos de linea. Uso Sublime Text 2

    gracias

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.