title: How does : <<'END' work in bash to create a multi-line comment block?
body: <p>I found a great answer for how to <a href="https://stackoverflow.com/a/947936/1093607">comment in bash script</a> (by <A HREF="https://stackoverflow.com/users/93279/sunny256">@sunny256</A>):</p>
  <blockquote>
  <pre><code>#!/bin/bash
  echo before comment
  : &lt;&lt;'END'
  bla bla
  blurfl
  END
  echo after comment
  </code></pre>
  <p>The <code>'</code> and <code>'</code> around the <code>END</code> delimiter are important, otherwise things inside the block like for example <code>$(command)</code> will be parsed and executed.</p>
  </blockquote>
  <p>This may be ugly, but it works and I'm keen to know what it means. Can anybody explain it simply? I did already find an explanation for <code>:</code> that it is no-op or true. But it does not make sense to me to call no-op or true anyway....</p>