Em geral, você não deve analisar HTML / XML usando expressões regulares .
No entanto, se o arquivo de entrada for realmente semelhante ao mostrado no exemplo (uma única tag de abertura e fechamento em cada linha e nenhum caractere > antes do final da tag de abertura), usando Perl:
perl -pe 's/>([0-9]+)/">".*2/e' in
-
s: afirma para executar uma substituição -
/: inicia o padrão -
>: corresponde a um caractere> -
([0-9]+): corresponde e agrupa um ou mais dígitos -
/: interrompe o padrão / inicia a sequência de substituição -
">".*2: expression; concatenação de duas cadeias, um caractere>e o primeiro grupo capturado multiplicado por2 -
/: interrompe a sequência de substituição / inicia os sinalizadores de padrão -
e: afirma para avaliar a string de substituição
% cat in
<integer name="leftValue">30</integer>
<integer name="rightValue">580</integer>
<integer name="rightValueDefault">495</integer>
% perl -pe 's/>([0-9]+)/">".*2/e' in
<integer name="leftValue">60</integer>
<integer name="rightValue">1160</integer>
<integer name="rightValueDefault">990</integer>