Sei Qui
Home > Software & Apps > Convertitori > Convertire File Testuale da UNIX a Windows (o viceversa)

Convertire File Testuale da UNIX a Windows (o viceversa)

Se hai mai trasferito un file di testo da un sistema basato su UNIX a un sistema Windows, avrai notato che aprendo il file sul sistema Windows tutti i caratteri non vengono visualizzati correttamente. I programmi “Text Editor” basati su Windows (come ad esempio Blocco note) potrebbero non essere in grado di visualizzare il testo creato su sistema UNIX. Nella maggior parte dei casi, quando si apre un file di testo, tutte le parole vengono visualizzate su una sola riga lunghissima, senza interruzioni. Questo è perché c’è una leggera differenza nel modo in cui un documento testuale viene scritto (e letto) su Windows e UNIX.

Se un file è stato scritto su un sistema basato su Windows e viene aperto da un editor testuale su un sistema UNIX, è molto probabile che appaino caratteri come “Ctrl-M” (^ M) alla fine di ogni riga di testo. Se un file è stato scritto su un sistema UNIX e aperto da un editor testuale su un sistema Windows, il carattere di interruzione di riga (EOL) potrebbe non essere visualizzato correttamente. Il carattere di “ritorno” infatti è diverso sia per UNIX e Windows.

Ecco che nasce quindi l’esigenza di dover convertire un file testuale da UNIX a Windows (o viceversa) in modo da non avere problemi di formattazione. Vediamo le diverse soluzioni.

Conversione dei file dal formato Linux/UNIX in formato Windows

Se si sta utilizzando un sistema basato su UNIX per creare dei file testuali che saranno poi usati su un sistema Windows, ci sono alcuni comandi che consentono di convertire il file di testo in un formato compatibile per Windows.

> Il comando dos2unix e unix2dos

1

È possibile usare la linea di comando per convertire in modo sicuro i file da UNIX a Windows e viceversa. Per convertire un file di testo da Windows in un file di testo UNIX, ecco cosa bisogna scrivere:

dos2unix windows.txt unix.txt

Il file convertito con il comando sopra citato sarà “WINDOWS.TXT” e dopo la conversione si otterrà ” unix.txt “. Per convertire un file di testo UNIX in un file di testo Windows bisogna invece digitare il seguente comando:

unix2dos unix.txt windows.txt

Il comando converte un file testuale UNIX chiamato “unix.txt” in un file di testo compatibile con Windows chiamato “WINDOWS.TXT”.

> Il comando awk

Il comando awk permette anche di convertire un file da UNIX a Windows e viceversa. Per convertire un file Windows in un file UNIX, digita il seguente comando :

awk '{ sub("\r$", ""); print }' windows.txt > unix.txt

Per convertire un file di testo UNIX chiamato “unix.txt” in un file di testo Windows denominato “WINDOWS.TXT”, digita il seguente comando:

awk 'sub("$", "\r")' uniz.txt > windows.txt

> Il comando tr

2

Il comando tr (traslitterare) può essere utilizzato per rimuovere i caratteri di ritorno a capo e i caratteri “Ctrl-Z” da un file Windows. Questo può essere fatto solo se si esegue la conversione di un file da Windows a UNIX. Il comando deve essere scritto come segue:

tr -d '\15\32' < winfile.txt > unixfile.txt

Il comando tr traslittera un carattere con un altro. In questo caso, sta aiutando esso ometterà caratteri non necessari.

> Uso del Visual Editor (Vi)

Se si utilizza Visual Editor per visualizzare un file creato su un sistema Windows, è possibile rimuovere i caratteri di ritorno a capo digitando la seguente riga di comando :

:1,$s/^M//g

Per inserire il carattere ^M, è necessario premere “Ctrl+v” e quindi premere Invio.

 

Lascia un commento

Top