O recode pode converter em entidades HTML:
$ echo "é" | recode ..html
é
Existem algumas transformações HTML ligeiramente diferentes disponíveis no recode; veja info recode HTML
.
Se você deseja recodificar um arquivo ou alguns arquivos, pode usar
$ recode ..html one_file another_file and so on
Para ação recursiva, use o comando find
, por exemplo,
$ find your_directory -type f -name "*.html"
O comando find acima mostrará apenas os arquivos. Por favor, certifique-se de que você encontrou apenas os arquivos corretos, não quaisquer binários e nem arquivos em diretórios indesejados. Também é uma boa idéia fazer um backup ou usar uma cópia de seus arquivos, não os arquivos reais. Se você encontrou o comando find correto, anexe -exec your_command {} +
, onde your_command é o recode ..html
de acima e {}
indica o (s) arquivo (s) que são dados por find para recodificar:
$ find your_directory -type f -name "*.html" -exec recode ..html {} +
Mas espere um momento, há uma grande ressalva: recode ..html
assume que seus arquivos de entrada estão no mesmo conjunto de caracteres (codificação) que você está usando na linha de comando. Se todos os seus arquivos usam o UTF-8 "moderno", ele funcionará bem, porque o Ubuntu usou o UTF-8 do padrão. Mas se alguns de seus arquivos usarem o ISO-8859-1 mais antigo ou outros charsets, será muito mais complicado.