title: why bash script when set -e is set and two pipelines concatenated by && failed
body: <p>Let's say we have a script like this.</p>
  
  <pre><code>#!/bin/bash
  set -e
  ls notexist &amp;&amp; ls notexist
  echo still here
  </code></pre>
  
  <p>won't exit because of set -e</p>
  
  <p>but</p>
  
  <pre><code>#!/bin/bash
  set -e
  ls notexist || ls notexist
  echo still here
  </code></pre>
  
  <p>will.
  Why?</p>