Salve ilustres, bom dia. Estou tentando escrever um script usando o SED que identifique o conteúdo de um campo dentro de um arquivo XML (tudo o que estiver entre as tags <SignatureValue> e </SignatureValue>) e substitua este conteúdo por ele mesmo, mas com uma quebra de linha a cada 76 caracteres.
Pensei que daria para fazer com um loop, mas não sei como contar os caracteres para fazer a quebra a cada 76. Estou esquentando os miolos ha um par de horas e não consegui sequer um esboço do código. Alguém pode sugerir algo? <contexto> Um bug em nosso sistema de emissão de NFe fez com que uma enormidade de arquivos XML fossem gerados com erro. A assinatura do XML da NFe tem 172 caracteres, demarcados com a tag <SignatureValue></SignatureValue>. O problema é que os caracteres da assinatura devem ter uma quebra de linha a cada 76 caracteres (ou seja, no lugar dos 77º e 153º caracteres). De uns dias para cá, embora envie o arquivo no formato correto para os webservices da receita, ao receber de volta com o protocolo de autorização, tal sistema tem gravado este arquivo em uma única linha, removendo todas as quebras. Com isso, meus clientes não consegue validar meus XMLs, pois o validador da receita busca esta assinatura no banco de dados deles e compara com a do arquivo, que é diferente justamente por causa da falta das quebras. </contexto>
