Renomeando arquivos "Codificação Inválida" e um Bônus

Publicado por Perfil removido em 01/09/2011

[ Hits: 13.512 ]

 


Renomeando arquivos "Codificação Inválida" e um Bônus



Pessoal, acredito que todos vocês já tiveram a experiência de receber um arquivo criado no "outro" SO, cujo nome apresenta caracteres substituídos por "???" e acrescido do "sobrenome" "(codificação inválida)".

Bom, uns já falaram em renomear um a um os arquivos, outros falam para mudar o CHARSET completo do sistema (Exe.: padrão no Ubuntu é utf8, aí você muda para iso8859-1, ou cp1252 ou cp850 ou ou ou ou ou...).

Eu pessoalmente acho mais fácil renomear os arquivos problemáticos e "pau no gato".

Mas é cansativo e trabalhoso.

Encontrei, meio que por acaso, um software muito bacana, chamado "convmv". O que ele faz? Troca o charset do nome do arquivo problemático, renomeando-o de acordo com as diretrizes da linha de comando, referentes ao sistema em questão.

Em um sistema Ubuntu, para obtê-lo, basta executar:

sudo apt-get install convmv

Para usar, abra um terminal e dispare:

find . | while read i; do convmv -f cp850 -t utf8 --notest $i; done

No caso, estou convertendo de cp850 (código padrão do DOS/Windows, apesar que neste último costuma ser também cp1252) para utf8 (que é o padrão do Ubuntu, apesar de algumas pessoas usarem o iso8859-1).

Bônus

Como os usuários de Windows (e alguns de Linux!) tem o mau costume de deixar espaços nos nomes de arquivo, aproveite a ocasião e renomeie tudo em lote:

find . | while read i; do nomebom=`echo $i | tr ' ' '_'`; mv "$i" $nomebom; done

Você pode colocar estes comandos em um arquivo texto e torná-lo um script executável.

Até a próxima!

Outras dicas deste autor

CV-2014-3566 SSL V3 Poodle vulnerability

Gstyle, gerenciador de temas para Ubuntu, Debian e derivados

Montando EnhnacedCDs

Configurando opções avançadas do KDE

Instalando o Drive NVIDIA-Linux-x86_64-285.05.09.run no Debian 6

Leitura recomendada

Configurando registro do Wine

Centralizando lixeira no Samba: Evitando perda de espaço em disco

Servidor LAMP no Red Hat, Fedora e CentOS

FrostWire no Edubuntu 14.04 64 bits

Teamviewer não inicia [Resolvido]

  

Comentários
[1] Comentário enviado por JohnRobson em 01/09/2011 - 15:05h

Fiz algumas alterações.

http://paste.ubuntu.com/679988/



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts