title: node_modules/.bin/package.cmd file in node js
body: <p>I am new to node js. I am trying to build a npm module and confused a bit with cmd file present in /node_modules/.bin folder with the name of the package locally.</p>
  
  <p>I installed multiple packages as dependencies and found that cmd files are different.</p>
  
  <p>jade.cmd</p>
  
  <pre><code>@IF EXIST "%~dp0\node.exe" (
    "%~dp0\node.exe"  "%~dp0\..\jade\bin\jade" %*
  ) ELSE (
    @SETLOCAL
    @SET PATHEXT=%PATHEXT:;.JS;=;%
    node  "%~dp0\..\jade\bin\jade" %*
  )
  </code></pre>
  
  <p>mocha-casperjs.cmd</p>
  
  <pre><code>@IF EXIST "%~dp0\/bin/sh.exe" (
    "%~dp0\/bin/sh.exe"  "%~dp0\..\mocha-casperjs\bin\mocha-casperjs" %*
  ) ELSE (
    @SETLOCAL
    @SET PATHEXT=%PATHEXT:;.JS;=;%
    /bin/sh  "%~dp0\..\mocha-casperjs\bin\mocha-casperjs" %*
  )
  </code></pre>
  
  <p>My question is, if it is auto-generated by NPM, why npm creates 2 different files for 2 different packages. Is is something a user creates and tells NPM?</p>