title: ${var:=default} vs ${var:-default} - what is difference?
body: <p>Seems both make absolutely same actions.</p>
  
  <p>Empty <code>$var</code> returns <code>defaultvalue</code> in both cases:</p>
  
  <pre><code>$ var=
  $ echo ${var:-defaultvalue}
  defaultvalue
  
  $ var=
  $ echo ${var:=defaultvalue}
  defaultvalue
  </code></pre>
  
  <p>Not empty <code>$var</code> return it's <em>value</em>  in both cases:</p>
  
  <pre><code>$ var=var
  $ echo ${var:-defaultvalue}
  var
  
  $ var=var
  $ echo ${var:=defaultvalue}
  var
  </code></pre>
  
  <p><code>$var</code> not set at all - returns <code>defaultvalue</code> in both cases:</p>
  
  <pre><code>$ unset var
  $ echo ${var:-defaultvalue}
  defaultvalue
  
  $ unset var
  $ echo ${var:=defaultvalue}
  defaultvalue
  </code></pre>