X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=failmail;h=c420465829dafb1e1873ebc6445ca9a596a7a2be;hb=c95baa6003490dcbbda39f5b6340ab68ba121224;hp=377564e294b6d5a038b1bec39352f84de32ace15;hpb=ea9d543d812b5ec13d4d3c6b424626f3afaaa5dc;p=log-quiet diff --git a/failmail b/failmail index 377564e..c420465 100755 --- a/failmail +++ b/failmail @@ -16,17 +16,26 @@ case $1 in -h|--help) cat <<'EOF' -usage: logmail CMD [ARGS...] +usage: failmail CMD [ARGS...] Send mail in case of failure of CMD + +Emails to $MAILTO or if unset, $USER@localhost EOF exit 0 ;; esac +mailto=$USER@localhost +if [[ $MAILTO ]]; then + mailto=$MAILTO +fi + t=$(mktemp) -if ! "$@" &>"$t"; then - mail -s "$HOSTNAME: $*" $USER@localhost <"$t" +code=0 +"$@" &>"$t" || code=$? +if (( code )); then + mail -s "$HOSTNAME: code: $code cmd: $*" $mailto <"$t" rm "$t" fi exit 0