Um arquivo de patch no formato unificado é apenas um número de blocos prefixados por uma linha que começa com @@
, que fornece o número da linha e a extensão do trecho no arquivo antigo e novo e o nome do antigo e do novo arquivo no início. Então, se, e. o always_the_same_line é o número da linha 30, o arquivo de patch seria parecido com
--- old_file_name
+++ new_file_name
@@ -30,2 +30,4 @@
this_line_is_always_the_same_and_never_repeated_in_file
unreliable, random content, SINGLE line
+my_new_line_1
+my_new_line_2
O número da linha é fácil de encontrar com grep -n always_the_same_line
, as duas linhas iniciais incluindo o "conteúdo não confiável, aleatório, linha ÚNICA" como contexto final podem ser encontradas com grep -A1 always_the_same_line
, e agora você só precisa de uma formatação usando awk
, perl
ou o que você achar mais confortável para produzir o arquivo de correção no formato necessário.