Se o que você está procurando é simplesmente substituir -
por ­
, basta usar sed
:
sed -i 's/-/\­/g' file.html
O comando acima irá editar file.html
e fazer a substituição desejada.
Sua outra pergunta não está no tópico aqui, então não vou aprofundar, mas sim, idiomas diferentes geralmente têm regras de hifenização diferentes.