title: grouping predicates in find
body: <p>This part " ( -name *txt -o -name *html ) " confuses me in the code:</p>
  
  <pre><code>find $HOME \( -name \*txt -o -name \*html \) -print0 | xargs -0 grep -li vpn
  </code></pre>
  
  <p>Can someone explain the the brackets and "-o"? Is "-o" a command or a parameter? I know the brackets are escaped by "\" , but why are they for?</p>