title: Makefile and use of $$
body: <p>So I have a Makefile in which I have the follwoing code that I try to understand:</p>
  
  <pre><code>for file_exe in `find . -name "zip_exe-*"`; do \
      ./$${file_exe} -d $(UNZIP_PATH)/lib; \
  done
  </code></pre>
  
  <p>As I understand this piece of code will try to find some executable zip and the extract those zip files to a locations. But what puzzles me is how <code>$${file_exe}</code> is working. Why is the double <code>$$</code> needed? I guess it has something to do with the fact that some bash commands are running from a makefile, but I can't explain to myself why the <code>$$</code> is needed and a simple <code>$</code> does not work since this command is running a sub-shell anyway.</p>