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

Publicado por Anderson Weller em 04/07/2014

[ Hits: 14.389 ]

 


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

Encontrando documentação de comandos no seu próprio Linux

Ver conexões httpd simultâneas

Qual a versão do meu Ubuntu

Usando outros delimitadores em sed

sysdig - Ferramenta de inspeção de eventos em tempo real

  

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