convmv - Convertendo arquivos com codificação ISO-8859-1 para UTF-8 entre outros

Iniciado por kErNeL_sCrIpT, 19 de Fevereiro de 2008, 13:04

tópico anterior - próximo tópico

kErNeL_sCrIpT

Não me responsabilizo pelo uso ou mal uso deste turorial que criei, use por sua conta e risco.

Bom galera, eu estava indo gravar uns arquivos no K3B, daí ele deu erro e me avisa que alguns dos arquivos que eu ia gravar estavam com uma codificação "errada" e que era para usar o convmv para conserta-los, pois bem, baixei do repositório mesmo e estudei o programa, até que consegui usa-lo tranquilamente.
Esse tipo de erro é comum em alguns arquivos gerados no Windows™©®, devido a ele utilizar uma codificação de caracteres diferente. Também pode acontecer em SOs/Distros Linux que usam outro tipo de codificação fora do "comum".

Pois bem, para quem tem o mesmo problema, recomendo o convmv, é um programa em linha de comando, mas é fácil de usar quando se conhece precisamente os comandos à serem usados. Esse programa converte somente o nome dos arquivos, ele não mexe nem modifica o conteúdo dos mesmos.

O convmv é indicado para reencodar em lote (muitos arquivos de uma só vez), para poucos arquivos, renomear manualmente é mais prático.


Instalação


Pelo Synaptic

Vá em Sistema > Administração > Gerenciador de pacotes Synaptic, vá em Procurar e digite convmv, agora marque para instalar.


Pelo Terminal


sudo apt-get install convmv


Utilização

Abra o Terminal, vá na pasta com os arquivos a serem reencodados, use o comando cd para isto, exemplo:

cd /home/seu_nome_de_usuario/imagens

Agora, tudo depende de que codificação você tem que fazer, de qual codificação para qual codificação, eu vou colocar um exemplo, que é o mais comum, que é o de converter ISO-8859-1 para UTF-8, mas para maiores detalhes sobre os diversos formatos de codificação de caracteres que o convmv trabalha, digite:

convmv --list


Para converter um único arquivo

Uma imagem com extensão PNG por exemplo:
convmv -f ISO-8859-1 -t UTF-8 nome_da_imagem.png --notest


Para converter muitos arquivos


Várias imagens com extensões PNG por exemplo:
convmv -f ISO-8859-1 -t UTF-8 *png --notest

Caso você tenha que converter muitos arquivos com extensões diferentes, utilize como neste exemplo acima, com todas as extensões que exista na pasta dos arquivos que tenham que ser convertidos.

Você poder dar os seguintes comandos no Terminal para poder aprender mais sobre o convmv:

convmv --help

man convmv


Abraço a todos e até mais




Fontes:


K3b
convmv --help
man convmv
http://www.gnu.org/software/libiconv/documentation/libiconv/iconv.1.html
http://en.wikipedia.org/wiki/ISO-8859-1#ISO-8859-1
http://pt.wikipedia.org/wiki/UTF-8

Oni-BR-

renomear manualmente também funciona né Kernel....hoje eu fui abrir um documento criado no office e o Broffice não abriu, dai foi só renomear e pronto!!! abriu numa boa!!
Ubuntu 8.10 Recém Instalado!!!!

kErNeL_sCrIpT

Citação de: Oni-BR- online 19 de Fevereiro de 2008, 18:55
renomear manualmente também funciona né Kernel....hoje eu fui abrir um documento criado no office e o Broffice não abriu, dai foi só renomear e pronto!!! abriu numa boa!!

Oni-BR-, eu tinha quase 800 arquivos, dentre eles, muitos arquivos com codificação de caractere "errado", quando você acha que eu ia terminar de achar um por um entre 800 arquivos e renomea-los manualmente? Pois é...

Oni-BR-

Citação de: kErNeL_sCrIpT online 19 de Fevereiro de 2008, 19:02
Citação de: Oni-BR- online 19 de Fevereiro de 2008, 18:55
renomear manualmente também funciona né Kernel....hoje eu fui abrir um documento criado no office e o Broffice não abriu, dai foi só renomear e pronto!!! abriu numa boa!!

Oni-BR-, eu tinha quase 800 arquivos, dentre eles, muitos arquivos com codificação de caractere "errado", quando você acha que eu ia terminar de achar um por um entre 800 arquivos e renomea-los manualmente? Pois é...

eu falei pq as vezes pode aparecer alguem e achar extremamente dificil usar o convmv....
Ubuntu 8.10 Recém Instalado!!!!

kErNeL_sCrIpT

Citação de: Oni-BR- online 19 de Fevereiro de 2008, 19:12
Citação de: kErNeL_sCrIpT online 19 de Fevereiro de 2008, 19:02
Citação de: Oni-BR- online 19 de Fevereiro de 2008, 18:55
renomear manualmente também funciona né Kernel....hoje eu fui abrir um documento criado no office e o Broffice não abriu, dai foi só renomear e pronto!!! abriu numa boa!!

Oni-BR-, eu tinha quase 800 arquivos, dentre eles, muitos arquivos com codificação de caractere "errado", quando você acha que eu ia terminar de achar um por um entre 800 arquivos e renomea-los manualmente? Pois é...

eu falei pq as vezes pode aparecer alguem e achar extremamente dificil usar o convmv....

Entendo o seu ponto de vista. Vou editar e deixar claro que o convmv é mais indicado para reencodar em lote. Obrigado por esclarecer o seu ponto de vista e desculpe se eu fui rude.

Oni-BR-

Citação de: kErNeL_sCrIpT online 20 de Fevereiro de 2008, 22:16
Citação de: Oni-BR- online 19 de Fevereiro de 2008, 19:12
Citação de: kErNeL_sCrIpT online 19 de Fevereiro de 2008, 19:02
Citação de: Oni-BR- online 19 de Fevereiro de 2008, 18:55
renomear manualmente também funciona né Kernel....hoje eu fui abrir um documento criado no office e o Broffice não abriu, dai foi só renomear e pronto!!! abriu numa boa!!

Oni-BR-, eu tinha quase 800 arquivos, dentre eles, muitos arquivos com codificação de caractere "errado", quando você acha que eu ia terminar de achar um por um entre 800 arquivos e renomea-los manualmente? Pois é...

eu falei pq as vezes pode aparecer alguem e achar extremamente dificil usar o convmv....

Entendo o seu ponto de vista. Vou editar e deixar claro que o convmv é mais indicado para reencodar em lote. Obrigado por esclarecer o seu ponto de vista e desculpe se eu fui rude.

nem esquenta amigo!!! nao te achei rude não....só achei que tinha ficado confuso!!! ;D
Ubuntu 8.10 Recém Instalado!!!!

kErNeL_sCrIpT

Citação de: Oni-BR- online 21 de Fevereiro de 2008, 18:00
nem esquenta amigo!!! nao te achei rude não....só achei que tinha ficado confuso!!! ;D

Poxa, obrigado pela compreenção Oni-BR-, realmente fiquei confuso X^D
Mas agora já ta tudo esclarecido :)

NewWave

E como saber o tipo de charset que ele está usando?
Pra usar o convmv eu preciso saber qual o charset de origem. Alguém dá uma dica?