title: grep something with xargs and find
body: <p>bash guru ;) I'm trying to improve some string in bash which grep specific keyword's matches in specific files. It looks like that:</p>
  
  <pre><code>find /&lt;path&gt;/hp -iname '*.ppd' -print0 | xargs -0 grep "\*ModelName\:"
  </code></pre>
  
  <p>which works very fast for me! In 20 times faster than this one:</p>
  
  <pre><code>find /&lt;path&gt;/hp -iname '*.ppd' -print0 | xargs -0 -I {} bash -c 'grep "\*ModelName\:" {}'
  </code></pre>
  
  <p>But the problem is that in the first script I'm getting the following lines: </p>
  
  <pre><code>/&lt;path&gt;/hp/hp-laserjet_m9040_mfp-ps.ppd:*ModelName: "HP LaserJet M9040 M9050 MFP"
  </code></pre>
  
  <p>but desired result is just </p>
  
  <pre><code>*ModelName: "HP LaserJet M9040 M9050 MFP"  
  </code></pre>
  
  <p>(as in the second script). How can I achieve it?</p>
  
  <p>P.S.: I'm using <code>find</code> for flexibility and future improvements of the script.</p>