diff options
author | EuAndreh <eu@euandre.org> | 2024-01-04 16:50:54 -0300 |
---|---|---|
committer | EuAndreh <eu@euandre.org> | 2024-01-04 16:50:54 -0300 |
commit | 1162dba9a66ed916a18960d43a12e840ecd7046e (patch) | |
tree | c9b953b902f576f9d8d51c066e01c458bea62c8f /bin | |
parent | re "s|echo \"\\\$|printf '%s\\\n' \"\$|g" (diff) | |
download | dotfiles-1162dba9a66ed916a18960d43a12e840ecd7046e.tar.gz dotfiles-1162dba9a66ed916a18960d43a12e840ecd7046e.tar.xz |
bin/muffle: Add -n option
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/muffle | 11 |
1 files changed, 8 insertions, 3 deletions
@@ -4,7 +4,7 @@ set -eu usage() { cat <<-'EOF' Usage: - muffle [--] COMMAND... + muffle [-n] [--] COMMAND... muffle -h EOF } @@ -14,6 +14,7 @@ help() { Options: + -n invert when to do the muffling -h, --help show this message COMMAND the COMMAND to be muffled @@ -49,8 +50,12 @@ for flag in "$@"; do esac done -while getopts 'h' flag; do +INVERT=false +while getopts 'nh' flag; do case "$flag" in + (n) + INVERT=true + ;; (h) usage help @@ -80,7 +85,7 @@ echo 0 > "$STATUS_F" } 2>&1 | timed | pre err > "$ERR" STATUS="$(cat "$STATUS_F")" -if [ "$STATUS" != 0 ]; then +if [ "$INVERT" = false -a "$STATUS" != 0 ] || [ "$INVERT" = true -a "$STATUS" = 0 ]; then cat "$OUT" "$ERR" | sort -k2 | while read -r line; do if [ "$(printf '%s\n' "$line" | cut -d' ' -f1)" = 'out:' ]; then |