Após "Número" em todas as linhas:
sed "s/.*Number/& $PARAM/" log.txt
Após "Número" na última linha:
sed "\$s/.*Number/& $PARAM/" log.txt
Após "Número", a última vez que aparece no arquivo:
sed "/Number/!b;:a;\$!N;/\n.*Number/{h;s/\n[^\n]*\$//p;g;s/^.*\n//};\$!ba;s/^\(.*Number \)/$PARAM/" log.txt
Explicação da última versão:
-
/Number/!b
- se a linha não contiver ramificação "Número" no final do script e imprima a linha -
:a
- rótulo de loop "a"-
\$!N
- se não for a última linha do arquivo, anexe a próxima linha ao final do conteúdo do espaço padrão -
/\n.*Number/{
- se o espaço padrão incluir "Número" depois de uma nova linha-
h
- copia o espaço padrão para armazenar espaço -
s/\n[^\n]*\$//p
- exclua a parte após a nova linha e imprima o restante -
g
- copiar espaço para espaço padrão -
s/^.*\n//}
- exclua a parte antes da nova linha, termine se
-
-
-
\$!ba
- ramificar para rotular "a" -
s/^\(.*Number \)/$PARAM/
- adiciona o conteúdo da variável depois de "Número"