Se você tiver acesso a ferramentas Unix (incluindo o Cygwin), você pode fazer isso com sed :
sed '0~5s/\.|$/.}/'
como em
sed -i.bak '0~5s/\.|$/.}/' filename
Isso usa o primeiro formulário de endereço de sed primeiro ~ passo ,
o que significa "corresponder a cada etapa 'linha começando com a linha primeiro ."
Se o | for sempre precedido por um . , como você diz,
então você pode deixar os pontos fora do comando:
sed '0~5s/|$/}/'