com sed :
sed -n '/^From: [email protected]/{h;n;/^to: [email protected]/{H;g;p;:x;n;p;s/.//;tx}}' file
-
/^From: [email protected]/: primeira pesquisa para o endereço de emailFrom:-
h;armazena essa linha no espaço de espera. -
n;carrega a próxima linha (a linhato:).
-
-
/^to: [email protected]/: pesquise oto:endereço de e-mail-
H;anexa essa linha ao espaço de espera. -
g;copie o espaço de espera para o espaço de padrão. -
p;imprime o espaço padrão. -
:x;definiu um rótulo chamadox. -
n;carrega a próxima linha (o corpo do email) -
p;imprime essa linha. -
s/.//faz uma substituição nessa linha (apenas substitua um caractere) ... -
tx... que o comandotpode verificar se essa substituição foi bem-sucedida (quando a linha não está vazia, como no final do corpo do email). Se sim, volte para o marcadorxe repita até aparecer uma linha vazia, se não pular para o final do script.
-
A saída:
From: [email protected]
to: [email protected]
<body of the message1>
From: [email protected]
to: [email protected]
<body of the message1>