Convertendo arquivos textos Unix para o DOS e vise-versa

setembro 7th, 2010 by rudsonalves Leave a reply »

Arquivos texto, ascii básico, em diferentes sistemas possuem terminações diferentes. No DOS uma mudança de linha é feita com dois bytes: CR (carriage return) e LF (Line Feed), enquanto que no Unix, isto é feito com apenas um byte, o LF.

Isto faz com que arquivos textos do DOS sejam visto no Unix como:

line1^M
line2^M
line3^M

enquanto que um arquivo semelhante no Unix seria visto no DOS como:

line1
     line2
          line3

já que ele possui apenas o caractere LF, alimentação de linha.

Na maioria dos Linux/Unix, existe os comandos:

Comando Descrição
todos converte um arquivo texto do Unix para DOS
fromdos converte um arquivo texto do DOS para o Unix

Sua sintaxe é bem simples:

todos <unix_input_file> <dos_output_file>

e

fromdos <dos_input_file> <unix_output_file>

Na versão que uso do Slackware64, current, e inclusive na 13 e 13.1, além de outros como vi reclamações pela rede, estes comandos em particular não estão funcionando. Eles fazem parte do pacote bin-11.1-x86_64-1.txz, da série “a”, na versão que estou usando.

Optei por baixar o Tofrodos, compilar e instalar, visto que ele usa apenas um único comando para transformar do DOS para o Unix e vise-versa.

root@khelben:# wget http://tofrodos.sourceforge.net/download/tofrodos-1.7.8.tar.gz
...
root@khelben:# tar xvf tofrodos-1.7.8.tar.gz
...
root@khelben:# cd tofrodos/src
root@khelben:# make
root@khelben:# cp fromdos /usr/local/bin
root@khelben:# ln -s /usr/local/bin/fromdos /usr/local/bin/todos
root@khelben:# rm /usr/bin/{fromdos,todos}

A sua sintaxe difere um pouco para:

todos <unix_input_file>

e

fromdos <dos_input_file>

QR Code
Advertisement

Deixe uma resposta

This blog is kept spam free by WP-SpamFree.