Namespace src/Bash

src/Bash

Overview

Directory src/Bash

file source src/Bash/handlePipelineFailure.sh

Bash::handlePipelineFailure

ignore exit code 141 from simple command pipes

Example
  local resultingStatus=0
  local -a originalPipeStatus=()
  cmd1 | cmd2 || Bash::handlePipelineFailure resultingStatus originalPipeStatus || true
  [[ "${resultingStatus}" = "0" ]]
@arg $1 resultingStatusCode:&int (passed by reference) (optional) resulting status code
@arg $2 originalStatus:int[] (passed by reference) (optional) copy of original PIPESTATUS array
@env PIPESTATUS assuming that this function is called like in the example provided
@see https://unix.stackexchange.com/a/709880/582856
@see https://gitlab.alpinelinux.org/alpine/aports/-/issues/11152
@warning alpine does not support PIPESTATUS very well as execution order of piped process is
not guaranteed
Or, if you want, you can alternatively use the GitHub discussion Q&A for feedback and questions.