Encontre arquivos contendo várias strings

Eu uso um comando para encontrar recursivamente arquivos contendo um certostring1:

find . -type f -exec grep -H string1 {} \;

Eu preciso encontrar arquivos que contenham várias strings, portanto, o comando deve retornar aqueles que contêm todas as strings. Algo assim:

find . -type f -exec grep -H string1 AND string2 {} \;

Não consegui encontrar um caminho. As cadeias podem estar em qualquer lugar nos arquivos. Mesmo uma solução para apenas duas strings seria legal.

questionAnswers(4)

yourAnswerToTheQuestion