title: Differences between single and double quotes in CMD
body: <p>I have a powershell file that replaces an IP in a config file.
  The powershell takes in three parameters:</p>
  
  <ol>
  <li>file name (<code>'C:\Program Files (x86)\app\app.conf'</code>)</li>
  <li>IP to replace</li>
  <li>new IP</li>
  </ol>
  
  <p>Since we are dependent on using a batch file for our service to process the task, I wrote a batch script that simply takes three parameters and posts that to the powershell script. </p>
  
  <p>We use batch file for calling and parsing the parameter:
  <em>($ just used to represent variables)</em></p>
  
  <pre><code>changeip.bat '$filepath' $oldip $newip
  </code></pre>
  
  <p>This fails, but I don't understand why. I've tried using double quotes instead of single quotes around <code>$filepath</code> and it worked.</p>
  
  <p>How can the whitespace in <code>$filepath</code> be understood by double quotes and not single quotes?</p>