Usando sed
:
sed "/\[Header2\]/,/\[/{/^property2/ s/$/ AppendedValue/}" infile
Isso procurará as linhas entre [Header2]
e [
(que seria o caractere inicial do próximo Cabeçalho desconhecido) e, em seguida, anexará a sequência AppendedValue
ao final de uma linha se iniciado com property2
; a parte {sed-script}
aplica-se apenas ao bloco correspondido dentro do intervalo de padrões fornecido, e outras linhas fora deste intervalo serão impressas sem alterações, o que é% de ação padrão desed
.
Você pode usar acima desta maneira também:
sed "/\[Header2\]/,/\[/{s/^property2.*/& AppendedValue/}" infile
Se você quer ser mais específico:
sed "/^\[Header2\]/,/^property2/{/^property2/ s/$/ AppendedValue/}" infile