Coloque todas as strings em um arquivo como este:
$ cat strings
string1
string2
string3
E execute:
$ grep -rhIoFf strings
Editar
Se não for exatamente string1
o que você precisa como saída (o efeito de -o) continue lendo
Converta a lista de strings em strings de arquivos (se eles não tiverem espaços ou novas linhas) em uma string separada por |
:
filter=$(printf "%s|" $(cat strings))
Em seguida, use a string como filtro para grep:
grep -rhIE "${filter%?}"