title: How to find all files which include few specific strings but not necessarily in the same line?
body: <p>In linux <code>grep -r &lt;string&gt; &lt;path&gt;</code> is a common way to find all instances of  in files under <code>&lt;path&gt;</code>, which basically gives you all the files under <code>&lt;path&gt;</code> which include <code>&lt;string&gt;</code>. But what if I want to find all files which include few strings? From <code>grep -r &lt;string1&gt; &lt;path&gt; | grep &lt;string2&gt;</code> I can get all files which include <code>&lt;string1&gt;</code> and <code>&lt;string2&gt;</code> in the same line, but how can I get the files which include <code>&lt;string1&gt;</code> and <code>&lt;string2&gt;</code> in separate lines?</p>