Se todas as linhas no arquivo forem estruturadas como o exemplo, acredito que você pode usar o programa de linha de comando cut para tratar os sinais de porcentagem como delimitadores de campo e selecionar 2 nd e 4 th campos. Então, tente executar
cut -d "%" -f 2,4 --output-delimiter="," <file_name
Atualização:
Eu não acho que nada precise ser alterado para o outro formato porque
no padrão %string% o comando acima vê string como o segundo campo e o extrai. Eu tentei correr
echo "%string%" | cut -d "%" -f 2,4 --output-delimiter=","
e string foram impressos na saída padrão.