Você pode instalar pcregrep
(disponível na maioria dos repositórios de distribuição) - que é grep usando a biblioteca de computadores , que faz "Perl Compatible Regular Expressions". Ele tem uma opção de linha de comando -M
que permite fazer pesquisas de várias linhas - do homem página :
"The output for any one match may consist of more than one line."
Então você poderia fazer
pcregrep -M 'my\s+ice\s+tea' filename
O \s
é espaço em branco, que corresponderá a \n
e \r
no modo multilinha, além dos caracteres normais de espaço em branco. Você também pode combinar o caractere de nova linha diretamente, então você poderia fazer
pcregrep -M 'pattern1_\n_pattern2' filename