Aqui está uma solução Perl:
perl -pe ' $prev=$1 if /^([\d\.]+)/; s/Blank/$prev/' file.txt
Explicação:
-
O
-p
flag do Perl significa "Percorra o arquivo de entrada linha a linha e imprima cada linha",-e
significa "executar o script fornecido na linha de comando". -
$prev=$1 if /^([\d\.]+)/;
: Se a linha começar com (^
) uma cadeia de números (\d
) e pontos\.
, salve essa cadeia (o IP) como$prev
. Assim, quando o script ler o arquivo,$prev
conterá o último IP encontrado. -
s/Blank/$prev/
: substitua a stringBlank
pelo valor de$prev
.