Renomeando arquivos de iso-8859-1 para utf-8


Freqüentemente no meu trabalho recebo arquivos codificados em iso-8859-1, vindos do windows. Além do conteúdo, o nome do arquivo é um problema, com todos aqueles caracteres estranhos.

Vejam como recebo os arquivos (eles vêm compactados em zip):
Arquivos com nomes iso-8859-1

Para renomeá-los todos de uma vez, fiz um pequeno script, usando o iconv. Chamei este script de muda_codificacao.sh. Assim, para renomear de uma vez só todos os arquivos dentro de uma pasta, eu uso:

muda_codificacao.sh PASTA_ONDE_ESTAO_OS_ARQUIVOS

Eis o resultado:
Arquivos com nomes utf-8, convertidos

Eis o script. Fiquem a vontade para modificá-lo às suas necessidades. Para algumas pessoas um script para o nautilus seria mais conveniente, não? Para mim este script é mais que suficiente, visto que uso bastante o terminal.

Até mais,
Wendell.

16 thoughts on “Renomeando arquivos de iso-8859-1 para utf-8”

  1. Muito útil. Eu to querendo fazer um carinha que renomeie todos os arquivos de uma pasta (e suas subpastas) para um padrão comum (minusculo, sem acentos e no lugar dos espaços um underline).
    O funcoeszz do verde faz isso, mas ele naum aplica em subpastas. Isso é uma coisa extremamente util para quem compartilha arquivos com usuarios do windows…

    abraços,

  2. Um script para o Nautilus seria uma mão na roda, afinal, se quisermos ser competitivos com o sistema Windows do Tio Bill que prima pela facilidade de uso, cada vez mais teremos que facilitar as coisas para os novos usuários.

  3. Olha Jonh, estou com o mesmo problema que o Heber teve:
    [: 24: ==: unexpected operator

    Nao consegui soluciona-lo ainda. Tem idéia do que seja? Eu uso o bash mesmo.

  4. Pra falar a verdade, verifiquei agora e os arquivos ficaram piores ainda hehehe:
    Aguas de mar‡o

    Que deveria ser: Aguas de março

  5. Desculpe os multiplos posts..

    O problema deve ser a conversão da encodificação… pois estou tentando executar o script numa partição ext3 mesmo… todos eles estão como os exemplos que vc mostrou nas screenshots acima com ‘?’ no lugar dos acentos e cedilhas.

  6. Mais um..

    Enfim resolvido.

    Eu havia copiado arquivos de uma partição NTFS – windows xp, para a minha ext3…

    O problema é que a encodificação do windows na verdade é a tal cp850 e tem tbm a cp437.

    Mofidicando seu script para converter essas dai para utf-8 ficou tudo perfeito.

    Obrigado!

Comments are closed.