title: remove files when name does NOT contain some words
body: <p>I am using Linux and intend to remove some files using shell.</p>
  
  <p>I have some files in my folder, some filenames contain the word "good", others don't.
  For example:</p>
  
  <pre><code>ssgood.wmv
  ssbad.wmv
  goodboy.wmv
  cuteboy.wmv
  </code></pre>
  
  <p>I want to remove the files that does NOT contain "good" in the name, so the remaining files are:</p>
  
  <pre><code>ssgood.wmv
  goodboy.wmv
  </code></pre>
  
  <p>How to do that using <code>rm</code> in shell? I try to use</p>
  
  <pre><code>rm -f *[!good].*
  </code></pre>
  
  <p>but it doesn't work.</p>
  
  <p>Thanks a lot!</p>