dos2unix(1) 2024-01-22 dos2unix(1) NOME dos2unix - Conversor de formato de arquivo texto de DOS/Mac para Unix e vice-versa SINOPSE dos2unix [opcoes] [ARQUIVO ...] [-n ARQENT ARQSAIDA ...] unix2dos [opcoes] [ARQUIVO ...] [-n ARQENT ARQSAIDA ...] DESCRICAO O pacote Dos2unix inclui utilitarios de "dos2unix" e "unix2dos" para converter arquivos texto nos formatos DOS ou Mac para formato Unix e vice-versa. Em arquivos texto DOS/Windows uma quebra de linha, tambem conhecida como nova linha, e uma combinacao de dois caracteres: um Carriage Return (CR) seguido por um Line Feed (LF). Em arquivos texto do Unix uma quebra de linha e um unico caractere: o Line Feed (LF). Em arquivos texto do Mac, anteriores ao Mac OS X, uma quebra de linha era um unico caractere Carriage Return (CR). Hoje em dia, Mac OS usa quebras de linha no estilo do Unix (LF). Alem das quebras de linhas, Dos2unix tambem pode converter as codificacoes de arquivos. Algumas poucas paginas podem ser convertidos para Latin-1 para Unix. E arquivos Unicode do Windows (UTF-16) podem ser convertidos para arquivos Unicode do Unix (UTF-8). Arquivos binarios sao ignorados automaticamente, a menos que a conversao seja forcada. Arquivos nao regulares, tais como diretorios e FIFOs, sao ignorados automaticamente. Ligacoes simbolicas e seus alvos sao por padrao mantidas intocaveis. Ligacoes simbolicas podem opcionalmente ser substituidas, ou a saida pode ser escrita para o alvo das ligacoes simbolicas. Nao ha suporte as ligacoes simbolicas do Windows. Dos2unix foi modelado seguindo dos2unix do SunOS/Solaris. Ha uma diferenca importante em relacao a versao original do SunOS/Solaris. Essa versao faz conversao no-lugar (modo de arquivo antigo) por padrao, enquanto a versao original do SunOS/Solaris fornecia suporte apenas a conversao pareada (modo de novo arquivo). Veja tambem as opcoes "-o" e "-n". Uma outra diferenca e que a versao SunOS/Solaris usa, por padrao, a conversao de modo do iso enquanto esta versao usa o do ascii. OPCOES -- Trata as opcoes seguintes como nomes de arquivos. Use essa opcao se voce quiser converter arquivos cujos nomes iniciam com um traco. Por exemplo, para converter um arquivo chamado "foo", voce pode usar este comando: dos2unix -- -foo Ou em modo de novo arquivo: dos2unix -n -- -foo saida.txt --allow-chown Permite alteracao da propriedade de arquivo no modo de arquivo antigo. Quando esta opcao e usada, a conversao nao sera abortada quando a propriedade do usuario e/ou do grupo do arquivo original nao puder ser preservada no modo de arquivo antigo. A conversao continuara e o arquivo convertido recebera a mesma propriedade nova como se tivesse convertido no modo de novo arquivo. Veja tambem as opcoes "-o" e "-n". Esta opcao so esta disponivel se o dos2unix oferecer suporte a preservacao da propriedade do usuario e do grupo de arquivos. -ascii Default conversion mode. See also section CONVERSION MODES. -iso Conversao entre conjunto de caractere do DOS e ISO-8859-1. Veja tambem a secao MODOS DE CONVERSAO. -1252 Usa a pagina de codigo 1252 do Windows (Europa ocidental). -437 Usa a pagina de codigo 437 do DOS (EUA). Essa e a pagina de codigo padrao usada para conversao ISO. -850 Usa a pagina de codigo 850 do DOS (Europa ocidental). -860 Usa a pagina de codigo 860 do DOS (Portugues). -863 Usa a pagina de codigo 863 do DOS (Frances do Canada). -865 Usa a pagina de codigo 865 do DOS (Nordico). -7 Converte caracteres de 8 bits para espaco de 7 bits. -b, --keep-bom Mantem marca de ordem de bytes (BOM). Quando o arquivo de entrada possuir um BOM, escreve um BOM no arquivo de saida. Esse e o comportamento padrao ao converter para quebras de linha do DOS. Veja tambem a opcao "-r". -c, --convmode MODOCONV Define o modo de conversao, sendo MODOCONV um dentre: ascii, 7bit, iso, mac com ascii sendo o padrao. -D, --display-enc CODIFICACAO Define a codificacao do texto exibido, sendo CODIFICACAO um dentre: ansi, unicode, utf8, utf8bom com ansi sendo o padrao. Essa opcao esta disponivel apenas no dos2unix para Windows com suporte a nome de arquivo em Unicode. Essa opcao nao possui efeito nos nomes de arquivos lidos e escritos, apenas em como eles sao exibidos. Ha varios metodos para exibir texto em um console Windows baseado na codificacao do texto. Todos eles possuem suas proprias vantagens e desvantagens. ansi O metodo padrao do dos2unix e usar o texto codificado em ANSI. A sua vantagem e a compatibilidade reversa. Ele funciona com fontes raster e TrueType. Em algumas regioes voce pode precisar alterar a pagina de codigo OEM do DOS para ANSI do sistema Windows usando o comando "chcp", porque dos2unix usa a pagina de codigo do sistema Windows. A desvantagem do ansi e que nomes de arquivos internacionais com caracteres fora a pagina de codigo padrao do sistema nao sao exibidos apropriadamente. Voce vera um sinal de interrogacao, ou um simbolo incorreto. Quando voce nao utiliza nomes de arquivos estrangeiros, esse metodo funciona bem. unicode, unicodebom A vantagem da codificacao do unicode (o nome Windows para UTF-16) e que o texto e normalmente exibido apropriadamente. Nao ha necessidade para alterar a pagina de codigo ativa. Voce pode precisar definir a fonte do console para uma fonte TrueType para que caracteres internacionais sejam exibidos apropriadamente. Quando um caractere nao esta incluido na fonte TrueType, geralmente voce ve um pequeno quadrado, algumas vezes com um sinal de interrogacao nele. Quando voce usa o console ConEmu todo texto e exibido apropriadamente, porque o ConEmu seleciona automaticamente um fonte boa. A desvantagem do unicode e que ele nao e compativel com ASCII. A saida nao e facil de lidar quando voce o redireciona para um outro programa. Quando o metodo e usado, o texto Unicode sera precedido com um BOM (Byte Order Mark, ou marca de ordem de byte). Um BOM e necessario para o redirecionamento, ou "piping", correto no PowerShell. utf8, utf8bom A vantagem do utf8 e que ele e compativel com ASCII. Voce precisa definir a fonte do console para uma fonte TrueType. Com uma fonte TrueType, o texto e exibido similar a uma codificacao "unicode". A desvantagem e que quando voce usa a fonte "raster" padrao, caracteres nao-ASCII sao exibidos incorretamente. Nao apenas nomes de arquivos unicode, mas tambem mensagens traduzidas ficam ilegiveis. No Windows configurado para uma regiao leste da Asia, voce pode ver muitas falhas no console quando as mensagens sao exibidas. Em um console ConEmu, o metodo de codificacao utf8 funciona bem. Quando o metodo e usado, o texto UTF-8 sera precedido com um BOM (Byte Order Mark, ou marca de ordem de byte). Um BOM e necessario para o redirecionamento, ou "piping", correto no PowerShell. A codificacao padrao pode ser alterada com a variavel de ambiente DOS2UNIX_DISPLAY_ENC definindo-a para "unicode", "unicodebom", "utf8" ou "utf8bom". -e, --add-eol Add a line break to the last line if there isn't one. This works for every conversion. A file converted from DOS to Unix format may lack a line break on the last line. There are text editors that write text files without a line break on the last line. Some Unix programs have problems processing these files, because the POSIX standard defines that every line in a text file must end with a terminating newline character. For instance concatenating files may not give the expected result. -f, --force Forca a conversao de arquivos binarios. -gb, --gb18030 No Windows, arquivos UTF-16 sao convertidos, por padrao, para UTF-8, independentemente da localizacao definida. Use esta opcao para converter arquivos UTF-16 para GB18030. Essa opcao esta disponivel apenas no Windows. Veja tambem a secao GB18030. -h, --help Exibe ajuda e sai. -i[OPCOES], --info[=OPCOES] ARQUIVO ... Exibe informacao do arquivo. Nenhuma conversao e feita. A seguinte informacao e exibida, nesta ordem: numero de quebras de linha do DOS, numero de quebras de linha do Unix, numero de quebras de linha do Mac, marca de ordem de byte, "text" ou "binary", nome de arquivo. Exemplo de saida: 6 0 0 no_bom text dos.txt 0 6 0 no_bom text unix.txt 0 0 6 no_bom text mac.txt 6 6 6 no_bom text mixed.txt 50 0 0 UTF-16LE text utf16le.txt 0 50 0 no_bom text utf8unix.txt 50 0 0 UTF-8 text utf8dos.txt 2 418 219 no_bom binary dos2unix.exe Note que em algumas vezes um arquivo binario pode ser confundido com um arquivo texto. Veja tambem a opcao "-s". If in addition option "-e" or "--add-eol" is used also the type of the line break of the last line is printed, or "noeol" if there is none. Exemplo de saida: 6 0 0 no_bom text dos dos.txt 0 6 0 no_bom text unix unix.txt 0 0 6 no_bom text mac mac.txt 1 0 0 no_bom text noeol noeol_dos.txt Opcionalmente, opcoes extra podem ser definidas para alterar a saida. Uma ou mais opcoes podem ser adicionadas. 0 Exibe as linhas de informacoes de arquivo seguido por um caractere nulo em vez de um caractere de nova linha. Isso habilita interpretacao correta de nomes de arquivo com espacos ou aspas quando a opcao c e usada. Use essa opcao na combinacao com opcoes "-0" ou "--null" do xargs(1). d Exibe o numero de quebras de linhas do DOS. u Exibe o numero de quebras de linhas do Unix. m Exibe o numero de quebras de linhas do Mac. b Exibe a marca de ordem de byte. t Exibe se arquivo e texto ou binario. e Print the type of the line break of the last line, or "noeol" if there is none. c Exibe apenas os arquivos que seriam convertidos. Com a opcao "c", dos2unix vai exibir apenas os arquivos que contem quebras de linha do DOS, unix2dos vai exibir apenas os nomes de arquivos que contem quebras de linha do Unix. If in addition option "-e" or "--add-eol" is used also the files that lack a line break on the last line will be printed. h Exibe um cabecalho. p Mostra nomes de arquivos sem caminho. Exemplos: Mostra informacao sobre todos os arquivos *.txt: dos2unix -i *.txt Mostra apenas o numero de quebras de linha DOS e Unix: dos2unix -idu *.txt Mostra apenas a marca de ordem de byte: dos2unix --info=b *.txt Lista os arquivos que possuem quebras de linha do DOS: dos2unix -ic *.txt Lista os arquivos que possuem quebras de linha do Unix: unix2dos -ic *.txt List the files that have DOS line breaks or lack a line break on the last line: dos2unix -e -ic *.txt Converte apenas arquivos que possuem quebras de linha do DOS e nao altera outros arquivos: dos2unix -ic0 *.txt | xargs -0 dos2unix Localiza arquivos de texto que possuam quebras de linha do DOS: find -name '*.txt' -print0 | xargs -0 dos2unix -ic -k, --keepdate Mantem a marca da data do arquivo de saida igual ao do arquivo de entrada. -L, --license Exibe a licenca do programa. -l, --newline Adiciona nova linha adicional. dos2unix: Apenas quebras de linha do DOS sao alteradas para duas quebras de linha do Unix. No modo Mac, apenas quebras de linha do Mac sao alterados para duas quebras de linha do Unix. unix2dos: Apenas quebras de linha do Unix sao alteradas para duas quebras de linha do DOS. No modo Mac, quebras de linha do Unix sao alteradas para duas quebras de linha do Mac. -m, --add-bom Escreve uma marca de ordem de byte (BOM) no arquivo de saida. Por padrao, um BOM UTF-8 e escrito. Quando o arquivo de entrada e UTF-16, e a opcao "-u" e usada, um BOM UTF-16 sera escrito. Nunca use essa opcao quando a codificacao de saida e outra alem de UTF-8, UTF-16 ou GB18030. Veja tambem a secao UNICODE. -n, --newfile ARQENT ARQSAIDA ... Modo de novo arquivo. Converte o arquivo ARQENT e escreve a saida para o arquivo ARQSAIDA. Os nomes de arquivos devem ser fornecidos em pares e nome coringa nao deveriam ser usados ou voce vai perder seus arquivos. A pessoa que comeca a conversao em modo de novo arquivo (pareado) sera o dono do arquivo convertido. As permissoes de leitura/escrita do novo arquivo serao as permissoes do arquivo original menos a umask(1) da pessoa que executa a conversao. --no-allow-chown Nao permite alteracao da propriedade do arquivo no modo de arquivo antigo (padrao). Aborta a conversao quando a propriedade do usuario e/ou do grupo do arquivo original nao puder ser preservada no modo de arquivo antigo. Veja tambem as opcoes "-o" e "-n". Esta opcao so esta disponivel se o dos2unix oferecer suporte a preservacao da propriedade do usuario e do grupo de arquivos. --no-add-eol Do not add a line break to the last line if there isn't one. -O, --to-stdout Write to standard output, like a Unix filter. Use option "-o" to go back to old file (in-place) mode. Combined with option "-e" files can be properly concatenated. No merged last and first lines, and no Unicode byte order marks in the middle of the concatenated file. Example: dos2unix -e -O file1.txt file2.txt > output.txt -o, --oldfile FILE ... Modo de arquivo antigo. Converte o arquivo ARQUIVO e o sobrescreve com a saida. O programa, por padrao, executa neste modo. Nomes coringas podem ser usados. No modo de arquivo antigo (no-lugar) o arquivo convertido recebe no mesmo dono, grupo e permissoes de leitura/escrita que o arquivo original. Tambem, quando o arquivo e convertido por outro usuario que tenha permissoes de escrita no arquivo (ex.: usuario root). A conversao sera abortada quando nao for possivel preservar os valores originais. Alteracao do dono pode significar que o dono original nao e mais capaz de ler o arquivo. Alteracao do grupo pode ser um risco para a seguranca, pois o arquivo pode ficar legivel para pessoas cujo acesso nao e desejado. Preservacao do dono, grupo e permissoes de leitura/escrita tem suporte apenas no Unix. Para verificar se dos2unix oferece suporte a preservacao da propriedade de usuario e de grupo de arquivos, digite "dos2unix -V". A conversao sempre e feita atraves de um arquivo temporario. Quando um erro ocorre no meio da conversao, o arquivo temporario e excluido e o arquivo original permanece intacto. Quando a conversao e bem sucedida, o arquivo original e substituido pelo arquivo temporario. Voce pode ter permissao de gravacao no arquivo original, mas nenhuma permissao para colocar a mesma propriedade de usuario e/ou de grupo no arquivo temporario como o arquivo original. Isso significa que voce nao consegue preservar a propriedade de usuario e/ou de grupo do arquivo original. Neste caso, voce pode usar a opcao "-allow-chown" para continuar com a conversao: dos2unix --allow-chown foo.txt Outra opcao e usar o novo modo de arquivo: dos2unix -n foo.txt foo.txt A vantagem da opcao "--allow-chown" e que voce pode usar coringas e as informacoes de propriedade serao preservadas quando possivel. -q, --quiet Modo quieto. Suprime todos os avios e mensagens. O valor retornado e zero. Exceto quando opcoes de linha de comando erradas forem usadas. -r, --remove-bom Remove marca de ordem de bytes (BOM). Nao escreve um BOM no arquivo de saida. Esse e o comportamento padrao ao converter para quebras de linha Unix. Veja tambem a opcao "-b". -s, --safe Ignora arquivo binarios (padrao). A acao de ignorar arquivos binarios e feita para evitar equivocos acidentais. Fique ciente de que a deteccao de arquivos binarios nao e 100% a prova de erros. Arquivos de entrada sao analisados por simbolos binarios que, geralmente, nao sao encontrados em arquivos textos. E possivel que um arquivo binario contenha apenas caracteres de texto normais. tal arquivo binario pode ser acidentalmente visto como um arquivo de texto. -u, --keep-utf16 Mantem a codificacao UTF-16 original do arquivo de entrada. O arquivo de saida sera escrito na mesma codificacao UTF-16, em little ou big endian, como o arquivo de entrada. Isso evita transformacao para UTF-8. Como consequencia, um BOM UTF-16 sera escrito. Essa opcao pode ser desabilitada com a opcao "-ascii". -ul, --assume-utf16le Presume que o formato de arquivo de entrada e UTF-16LE. Quando ha uma marca de ordem de byte no arquivo de entrada, esta tem prioridade sobre essa opcao. Quando voce fizer uma presuncao equivocada (o arquivo de entrada nao estava no formato UTF-16LE) e a conversao funcionar, voce tera um arquivo de saida UTF-8 com texto errado. Voce pode desfazer a conversao errada com iconv(1) pela conversao do arquivo de saida UTF-8 de volta para UTF-16LE. Isso vai trazer de volta o arquivo para o original. A presuncao de UTF-16LE funciona como um modo de conversao. Ao alternara o modo ascii padrao, a presuncao de UTF-16LE e desativada. -ub, --assume-utf16be Presume que o formato de arquivo de entrada e UTF-16BE. Essa opcao funciona o mesmo que a opcao "-ul". -v, --verbose Exibe mensagens detalhadas. Informacao extra e exibida sobre marcas de ordem de byte e a quantidade de quebras de linha convertidas. -F, --follow-symlink Segue ligacoes simbolicas e converte os alvos. -R, --replace-symlink Substitui ligacoes simbolicas com arquivos convertidos (arquivos alvo originais permanecem inalterados). -S, --skip-symlink Mentem ligacoes simbolicas e alvos inalterados (padrao). -V, --version Exibe informacao da versao e sai. MODO MAC By default line breaks are converted from DOS to Unix and vice versa. Mac line breaks are not converted. No modo Mac, quebras de linha sao convertidas de Mac para Unix e vice- versa. Quebras de linha do DOS nao sao alteradas. Para executar no modo Mac, use a opcao de linha de comando "-c mac" ou use os comandos "mac2unix" ou "unix2mac". MODOS DE CONVERSAO ascii This is the default conversion mode. This mode is for converting ASCII and ASCII-compatible encoded files, like UTF-8. Enabling ascii mode disables 7bit and iso mode. If dos2unix has UTF-16 support, UTF-16 encoded files are converted to the current locale character encoding on POSIX systems and to UTF-8 on Windows. Enabling ascii mode disables the option to keep UTF-16 encoding ("-u") and the options to assume UTF-16 input ("-ul" and "-ub"). To see if dos2unix has UTF-16 support type "dos2unix -V". See also section UNICODE. 7bit Neste modo todos os caracteres nao-ASCII de 8 bits (com valores entre 128 e 255) sao convertidos para um espaco de 7 bits. iso Caracteres sao convertidos entre um conjunto de caracteres do DOS (pagina de codigo) e conjunto de caracteres ISO-8859-1 (Latin-1) no Unix. Caracteres de DOS sem um equivalente ISO-8859-1, para os quais a conversao nao e possivel, sao convertidos para um ponto. O mesmo vale para caracteres ISO-8859-1 sem a contraparte DOS. Quando apenas a opcao "-iso" for usada, dos2unix vai tentar determinar a pagina de codigo ativa. Quando isso nao for possivel, dos2unix vai usar a pagina de codigo padrao CP437, a qual e usada principalmente nos EUA. Para forcar uma pagina de codigo especifica, use as opcoes "-437" (EUA), "-850" (Europeu oriental), "-860" (Portugues), "-863" (Franco-canadense) ou "-865" (Nordico). Tambem ha suporte a pagina de codigo do Windows CP1252 (Europeu ocidental) com a opcao "-1252". Para outras paginas de codigo, use dos2unix em combinacao cm iconv(1). Iconv pode converter entre uma lista grande de codificacoes de caracteres. Nunca use conversao ISO em arquivos textos Unicode. Isso vai corromper os arquivos codificados em UTF-8. Alguns exemplos: Conversao da pagina de codigo padrao do DOS para Latin-1 do Unix: dos2unix -iso -n entrada.txt saida.txt Conversao da CP850 do DOS para Latin-1 do Unix: dos2unix -850 -n entrada.txt saida.txt Conversao da CP1252 do Windows para Latin-1 do Unix: dos2unix -1252 -n entrada.txt saida.txt Conversao da CP1252 do Windows para UTF-8 (Unicode) do Unix: iconv -f CP1252 -t UTF-8 entrada.txt | dos2unix > saida.txt Conversao de Latin-1 do Unix para pagina de codigo padrao do DOS: unix2dos -iso -n entrada.txt saida.txt Conversao do Latin-1 do Unix para CP850 do DOS: unix2dos -850 -n entrada.txt saida.txt Conversao do Latin-1 do unix para CP1252 do Windows: unix2dos -1252 -n entrada.txt saida.txt Conversao do UTF-8 (Unicode) do Unix para CP1252 do Windows: unix2dos < entrada.txt | iconv -f UTF-8 -t CP1252 > saida.txt Veja tambem e . UNICODE Codificacoes Exitem codificacoes Unicode diferentes. No Unix e no Linux, arquivos Unicode sao geralmente codificados em UTF-8. No Windows, arquivos texto Unicode podem ser codificados em UTF-8, UTF-16 ou UTF-16 big endian, mas na maioria das vezes sao codificados no formato UTF-16. Conversao Unicode text files can have DOS, Unix or Mac line breaks, like ASCII text files. Todas as versoes do dos2unix e unix2dos podem converter arquivos codificados em UTF-8 porque UTF-8 foi projetado para ter compatibilidade reversa com ASCII. Dos2unix e unix2dos com suporte a Unicode UTF-16 podem ler arquivos texto codificados em little e big endian UTF-16. Para ver se dos2unix foi compilado com suporte a UTF-16, digite "dos2unix -V". No Unix/Linux, arquivos codificados em UTF-16 sao convertidos para a codificacao de caracteres do localizacao. Use o comando locale(1) para descobrir qual e a codificacao de caracteres da localizacao. Quando a conversao nao for possivel, ocorrera um erro e o arquivo sera ignorado. No Windows, arquivos UTF-16 sao convertidos, por padrao, para UTF-8. Arquivos texto formatados em UTF-8 possuem otimo suporte em ambos Windows e Unix/Linux. Codificacoes UTF-16 e UTF-8 sao completamente compativeis, nao havendo qualquer perda de texto na conversao. Quando um erro de conversao UTF-16 para UTF-8 ocorre, por exemplo quando o arquivo de entrada UTF-16 contem um erro, o arquivo sera ignorado. Quando a opcao "-u" e usada, o arquivo de saida sera escrito na mesma codificacao UTF-16 que o arquivo de saida. A opcao "-u" evita conversao para UTF-8. Dos2unix e unix2dos nao possuem opcao para converter arquivos UTF-8 para UTF-16. Modo de conversao ISO e 7 bits nao funcionam em arquivos UTF-16. Marca de ordem de byte On Windows Unicode text files typically have a Byte Order Mark (BOM), because many Windows programs (including Notepad) add BOMs by default. See also . No Unix, arquivos Unicode normalmente nao tem BOM. Presume-se que arquivos texto sao codificados na codificacao de caracteres da localizacao. Dos2unix pode detectar apenas se um arquivo esta no formato UTF-16 se o arquivo tiver BOM. Quando um arquivo UTF-16 nao tiver BOM, dos2unix vai ver se o arquivo e um arquivo binario. Use a opcao "-ul" ou "-ub" para converter um arquivo UTF-16 sem BOM. Dos2unix escreve por padrao nenhum BOM no arquivo de saida. Com a opcao "-b", o Dos2unix escreve um BOM quando o arquivo de entrada possuir BOM. Unix2dos escreve por padrao um BOM no arquivo de saida quando o arquivo de entrada tem BOM. Use a opcao "-m" para remover BOM. Dos2unix e unix2dos sempre escrevem BOM quando a opcao "-m" e usada. Nomes de arquivos Unicode no Windows Dos2unix possui um suporte opcional para leitura e escrita de nomes de arquivos Unicode no Prompt de Comando Windows. Isso significa que dos2unix pode abrir arquivos que possuam caracteres no nome que nao sao parte da pagina de codigo ANSI padrao do sistema. Para ver se dos2unix para Windows foi compilado com suporte a nomes de arquivos em Unicode, digite "dos2unix -V". Ha alguns problemas com a exibicao de nomes de arquivos Unicode em um console Windows. Veja a opcao "-D", "--display-enc". Para nomes de arquivos pode ser exibido incorretamente, mas os arquivos serao escritos com o nome correto. Exemplos de Unicode Conversao de UTF-16 do Windows (com BOM) para UTF-8 do Unix: dos2unix -n entrada.txt saida.txt Conversao de UTF-16LE do Windows (sem BOM) para UTF-8 do Unix: dos2unix -ul -n entrada.txt saida.txt Conversao de UTF-8 Unix para UTF-8 do Windows com BOM: unix2dos -m -n entrada.txt saida.txt Conversao de UTF-8 do Unix para UTF-16 do Windows: unix2dos < entrada.txt | iconv -f UTF-8 -t UTF-16 > saida.txt GB18030 GB18030 is a Chinese government standard. A mandatory subset of the GB18030 standard is officially required for all software products sold in China. See also . GB18030 e completamente compativel com Unicode e pode ser considerado um formato de transformacao de unicode. Assim como UTF-8, GB18030 e compativel com ASCII. GB18030 tambem e compativel com a pagina de codigo 936 do Windows, tambem conhecida como GBK. No Unix/Linux, arquivos UTF-16 sao convertidos para GB18030 quando a codificacao da localizacao e definida para GB18030. Note que isso vai funcionar apenas se o sistemas oferecer suporte a localizacao. Use o comando "locale -a" para obter a lista de localizacoes as quais ha suporte. No Windows, voce precisa usar a opcao "-gb" para converter arquivos UTF-16 para GB18030. Arquivos codificados em GB18030 possuem uma marca de ordem de bytes, como arquivos Unicode. EXEMPLOS Le a entrada da "stdin" e escreve a saida para "stdout": dos2unix < a.txt cat a.txt | dos2unix Converte e substitui a.txt. Converte e substitui b.txt: dos2unix a.txt b.txt dos2unix -o a.txt b.txt Converte e substitui a.txt no modo de conversao ascii: dos2unix a.txt Converte e substitui a.txt no modo de conversao ascii. Converte e substitui b.txt no modo de conversao 7bit: dos2unix a.txt -c 7bit b.txt dos2unix -c ascii a.txt -c 7bit b.txt dos2unix -ascii a.txt -7 b.txt Converte a.txt do formato do Mac para Unix: dos2unix -c mac a.txt mac2unix a.txt Converte a.txt do formato do Unix para Mac: unix2dos -c mac a.txt unix2mac a.txt Converte e substitui a.txt enquanto mantem a marca de data original: dos2unix -k a.txt dos2unix -k -o a.txt Converte a.txt e escreve para e.txt: dos2unix -n a.txt e.txt Converte a.txt e escreve para e.txt, mantem a marca de data de e.txt igual a a.txt: dos2unix -k -n a.txt e.txt Converte e substitui a.txt. Converte b.txt e escreve para e.txt: dos2unix a.txt -n b.txt e.txt dos2unix -o a.txt -n b.txt e.txt Converte c.txt e escreve para e.txt. Converte e substitui a.txt. Converte e substitui b.txt. Converte d.txt e escreve para f.txt: dos2unix -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt CONVERSAO RECURSIVA Em um shell Unix, os comandos find(1) e xargs(1) podem ser usados para executar recursivamente o dos2unix em todos os arquivos texto em uma arvore de diretorios. Por exemplo, para converter todos os arquivos .txt na arvore de diretorios sob o diretorio atual, digite: find . -name '*.txt' -print0 |xargs -0 dos2unix A opcao do find(1) "-print0" e a opcao correspondente do xargs(1) "-0" sao necessarias quando houver arquivos com espacos ou aspas no nome. Do contrario, essas opcoes podem ser omitidas. Outra alternativa e usar find(1) com a opcao "-exec": find . -name '*.txt' -exec dos2unix {} \; Em um Prompt de Comando do Windows o seguinte comando pode ser usado: for /R %G in (*.txt) do dos2unix "%G" Usuarios do PowerShell podem usar o seguinte comando no Windows PowerShell: get-childitem -path . -filter '*.txt' -recurse | foreach-object {dos2unix $_.Fullname} LOCALIZACAO LANG O idioma primario e selecionado com a variavel de ambiente LANG. A variavel LANG consiste em varias partes. A primeira parte esta em letras pequenas no codigo do idioma. A segunda parte e opcional e e o codigo do pais em letras maiusculo, precedida de um sublinhado. Ha tambem uma terceira parte opcional: codificacao de caractere, precedida com um ponto. Alguns exemplos para shells do tipo padrao POSIX: export LANG=nl Holandes export LANG=nl_NL Holandes, Holanda export LANG=nl_BE Holandes, Belgica export LANG=es_ES Espanhol, Espanha export LANG=es_MX Espanhol, Mexico export LANG=en_US.iso88591 Ingles, EUA, codificacao Latin-1 export LANG=en_GB.UTF-8 Ingles, Reino Unido, codificacao UTF-8 For a complete list of language and country codes see the gettext manual: Nos sistemas Unix, voce pode usar o comando locale(1) para obter informacao especifica da localizacao. LANGUAGE With the LANGUAGE environment variable you can specify a priority list of languages, separated by colons. Dos2unix gives preference to LANGUAGE over LANG. For instance, first Dutch and then German: "LANGUAGE=nl:de". You have to first enable localization, by setting LANG (or LC_ALL) to a value other than "C", before you can use a language priority list through the LANGUAGE variable. See also the gettext manual: Se voce selecionou um idioma que nao esta disponivel, voce vai tera as mensagens em ingles (padrao). DOS2UNIX_LOCALEDIR Com a variavel de ambiente DOS2UNIX_LOCALEDIR, o LOCALEDIR definido durante a compilacao pode ser sobrescrito. LOCALEDIR e usada para localizar os arquivos de idioma. O valor padrao do GNU e "/usr/local/share/locale". A opcao --version vai exibir o LOCALEDIR que e usado. Exemplo (shell POSIX): export DOS2UNIX_LOCALEDIR=$HOME/share/locale VALOR RETORNADO No sucesso, zero e retornado. Quando um erro de sistema ocorre, o ultimo erro de sistema sera retornado. Para outros erros, 1 e retornado. O valor retornado e sempre zero no modo quieto, exceto quando opcoes de linha de comando erradas sao usadas. PADROES AUTORES Benjamin Lin - Bernd Johannes Wuebben (modo mac2unix) - , Christian Wurll (adiciona nova linha extra) - , Erwin Waterlander - (mantenedor) Project page: SourceForge page: VEJA TAMBEM file(1) find(1) iconv(1) locale(1) xargs(1) dos2unix 2024-01-22 dos2unix(1)