X-Git-Url: https://git.distorted.org.uk/~mdw/rsync-backup/blobdiff_plain/1da0cd4787205538e267e34943a6a9eceb466abd..4f618c54d080d77c4e1ea0d2c2a183e8988c442f:/rsync-backup.in diff --git a/rsync-backup.in b/rsync-backup.in index ec876ed..0ee1150 100644 --- a/rsync-backup.in +++ b/rsync-backup.in @@ -78,6 +78,15 @@ maybe () { esac } +copy () { + prefix=$1 + ## Copy lines from stdin to stdout, adding PREFIX. + + while IFS= read -r line; do + printf "%s %s\n" "$prefix" "$line" + done +} + run () { tag=$1 cmd=$2; shift 2 ## Run CMD, logging its output in a pleasing manner. @@ -94,8 +103,8 @@ run () { { { { ( set +e "$cmd" "$@" 3>&- 4>&- 5>&- 9>&- echo $? >&5; ) | - while IFS= read line; do echo "| $line"; done >&4; } 2>&1 | - while IFS= read line; do echo "* $line"; done >&4; } 4>&1 | + copy "|" >&4; } 2>&1 | + copy "*" >&4; } 4>&1 | cat >&9; } 5>&1