Supondo que os dados sejam estruturados para que seja sempre a linha antes e depois do desejado, você pode usar os switches grep -A(after) e -B(before) para dizer para incluir a 1 linha antes da partida e 1 linha depois:
$ grep -A 1 -B 1 "42B" sample.txt
Pseudo name=Apple
Code=42B
state=fault
Se você deseja as mesmas linhas numéricas antes e depois do termo de pesquisa, pode usar a opção -C(context):
$ grep -C 1 "42B" sample.txt
Pseudo name=Apple
Code=42B
state=fault
Se você deseja ser mais rigoroso ao corresponder às várias linhas, pode usar a ferramenta pcregrep, para corresponder a um padrão em várias linhas:
$ pcregrep -M 'Pseudo.*\n.*42B.*\nstate.*' sample.txt
Pseudo name=Apple
Code=42B
state=fault
O padrão acima corresponde da seguinte forma:
-M - várias linhas
'Pseudo.*\n.*42B.*\nstate.*'- corresponde a um grupo de cadeias de caracteres em que a primeira cadeia começa com a palavra "Pseudo"seguida por qualquer caractere até o final da linha \n, seguida de qualquer caractere até a sequência "42B"seguida de qualquer caractere até outro final da linha ( \n), seguida pela sequência "state"seguido por qualquer caractere.