title: How to suppress variable substitution in bash heredocs
body: <p>Is it possible to create a heredoc that does not become subject to variable expansion?</p>
  
  <p>e.g.</p>
  
  <pre><code>cat &lt;&lt;-EOF &gt; somefile.sh
  Do not print current value of $1 instead evaluate it later.
  EOF
  </code></pre>
  
  <p><strong>Update</strong>  I am aware of escaping by <code>\</code>.  My actual heredoc has many variables in it - and it is error prone and tedious to escape all of them.</p>