Regular Return Code Does Not Work with Pipe

foo_unhappy(){
  echo "foo_unhappy"
  return 1
}

main() {
  foo_unhappy | tee /tmp/out
  echo "foo_unhappy | tee /tmp/out. Return code: $?"
}

main "${@}" || exit 1
foo_unhappy
foo_unhappy | tee /tmp/out. Return code: 0

To properly verify

To properly verify look at:


Backlinks