2011-11-22

Convertire un file di testo da UNIX a DOS con vim l'editor

La conversione di un file di testo da UNIX ( CR come fine riga ) a DOS ( coppia di CR-LF come fine riga ), può essere svolta in molti modi con i comandi UNIX.

Questa è la volta di vim l'editor.

L'esigenza è quella di aggiungere il carattere CR (Carriage Return) (codice ASCII decimale 13, esadecimale 0x0D) a fine riga prima del carattere LF (Line Feed) (codice ASCII decimale 10, esadecimale 0x0A).

Bene, una volta aperto con vim il file da convertire si può sapere se è già in formato DOS verificando la presenza dell'etichetta: [dos] subito dopo il nome del file che compare nell'ultima riga dello schermo, se compare vuol dire che il file è già in formato DOS. Se l'etichetta [dos] non compare va eseguito il comando:

    :set ff=dos<INVIO>

poi il file va salvato nel modo abituale*, alla successiva riapertura del file l'etichetta [dos] dovrebbe essere presente a dimostrare che il formato del file adesso è quello previsto da DOS.



Per l'inverso il comando da impartire è:

    :set ff=unix<INVIO>

che permette di eliminare il carattere CR alla fine di ogni riga al momento del salvataggio del file di testo.

* non ho indicato il modo per chiudere vim salvando il file perché dipende dai gusti personali, riassumo quelli che uso più spesso:

    :wq<INVIO>

    ZZ

    :x<INVIO>

Nessun commento:

Posta un commento