Convertendo arquivo UTF-8 com BOM para UTF-8 sem BOM

Publicado por Anderson Weller em 04/07/2014

[ Hits: 14.809 ]

 


Convertendo arquivo UTF-8 com BOM para UTF-8 sem BOM



Estou migrando minhas atividades totalmente para o GNU/Linux. Uma das minhas tarefas, era a conversão de arquivos .bat para os respectivos .sh.

Porém, ao tentar executar esses arquivos .sh, eles sempre retornavam erro.

Depois de alguns testes, percebi que o problema era a assinatura BOM (Byte Order Mark) dos arquivos UTF-8, gerados por mim no Notepad++.

Veja: Byte Order Mark - Wikipedia, the free encyclopedia


Para resolver esse problema, utilizei um comando para reescrever um arquivo, retirando essa assinatura.

Supondo que o arquivo seja o file.sh, teremos o seguinte comando:

tail --bytes=+4 file.sh | tee file.sh > /dev/null

Observações do comando:
  • tail --bytes=+4 file.sh :: Apresenta o conteúdo do arquivo, com exceção da assinatura - os 4 primeiros bytes;
  • | tee file.sh :: Redireciona o texto para o comando tee que reescreve o conteúdo no arquivo;
  • > /dev/null :: Evita que o conteúdo seja exibido na tela.

Fonte original:
Outras dicas deste autor

Como verificar sistema de arquivos da partição principal

Plugin Flash Livre (Gnash e Lightspark) no Debian 7.5 - Instalação e configuração

Troca automática de Wallpaper no Gnome 3

Leitura recomendada

Renomeando arquivos simultaneamente com apenas uma linha de comando

Montando iPad no Linux

Encontrar IP duplicado na rede

Mostrando seu prompt para outro usuário

Habilitando o SUDO no Debian 8

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts