title: what does "?" mean in ${foo:?} in bash?
body: <p>I have some bash scripts which I am going through and I find that the code uses following construct for many variables:</p>
  
  <pre><code>ID1="{ID2:?}"
  
  . ${PATH1:?}/file1
  </code></pre>
  
  <p>Can someone please help me in understanding what <code>?</code> does in this?</p>