title: Shell UNIX : grep wild card
body: <p>I can't figure out why the wild character * is interpreted differently in the following examples with grep :</p>
  
  <pre><code>find . -type f -name \*
  </code></pre>
  
  <p>Results :</p>
  
  <pre><code>./tgt/etc/test_file.c
  ./tgt/etc/speleo/test_file.c
  ./tgt/etc/other_file.c
  ./src/file.c
  </code></pre>
  
  <p>I want to return from this command the files that match a pattern with eventually a wildcard *. But :</p>
  
  <pre><code>find . -type f -name \* | grep "tgt/etc/*" # this one works
  find . -type f -name \* | grep tgt/etc/* # not this one
  find . -type f -name \* | grep tgt/et*/s* # this one works
  find . -type f -name \* | grep "tgt/et*/s*" # not this one
  </code></pre>
  
  <p>I'd like to have an implementation which works fine with both cases. What should I use ?</p>