Como trocar o encode de ISO para UTF-8 e trocar as quebras de linha (EOL) de formato Windows para Unix
Dica publicada em Linux / Software
Como trocar o encode de ISO para UTF-8 e trocar as quebras de linha (EOL) de formato Windows para Unix
Esta dica é útil para converter projetos desenvolvidos em Windows para ambientes *NIX em geral...
Primeiro teste sua busca pelos arquivos que pretende afetar:
find -name \*.php
Viu o resultado? É isto de fato que deseja afetar? Ok, vamos converter:
for i in $(find -name \*.php); do
A linha abaixo vai trocar o encode do arquivo e redirecionar o resultado para um arquivo temporário:
iconv $i -f iso-8859-1 -t utf8 -o $i.2
A linha abaixo vai trocar as quebras de linha de Windows para Unix do arquivo temporário e redirecionar o resultado para o arquivo original:
awk '{ sub("\r$", ""); print }' $i.2 > $i
done
Primeiro teste sua busca pelos arquivos que pretende afetar:
find -name \*.php
Viu o resultado? É isto de fato que deseja afetar? Ok, vamos converter:
for i in $(find -name \*.php); do
A linha abaixo vai trocar o encode do arquivo e redirecionar o resultado para um arquivo temporário:
iconv $i -f iso-8859-1 -t utf8 -o $i.2
A linha abaixo vai trocar as quebras de linha de Windows para Unix do arquivo temporário e redirecionar o resultado para o arquivo original:
awk '{ sub("\r$", ""); print }' $i.2 > $i
done
Ou seja, se você tiver o nome "Meu arquivo.php" ele será tratado como "Meu" e "arquivo.php"... O melhor a se fazer nesse caso seria um simples:
for i in *.php; do