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

Publicado por Anderson Weller em 04/07/2014

[ Hits: 14.426 ]

 


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

Troca automática de Wallpaper no Gnome 3

Como verificar sistema de arquivos da partição principal

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

Leitura recomendada

Utilizando o Alien

Iniciando o Mplayer em tela cheia na segunda placa de vídeo

Convertendo arquivos .doc para .txt via linha de comando

Ativando a conta root no Ubuntu

Interrompendo processos no apt com segurança

  

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