summaryrefslogtreecommitdiff
path: root/support/rsync-slash-strip
diff options
context:
space:
mode:
authorWayne Davison <wayne@opencoder.net>2021-11-13 09:30:08 -0800
committerWayne Davison <wayne@opencoder.net>2021-11-13 10:39:09 -0800
commit1f0e62f139565f39020e1f76700828b415b01bcf (patch)
treee1675ded509de2709d7b16cf1960c68df6c570b4 /support/rsync-slash-strip
parent7d830ff52ff7b01f528f39aa27b1ab36ea8c1356 (diff)
downloadrsync-1f0e62f139565f39020e1f76700828b415b01bcf.tar.gz
Improve a couple support scripts:
- rsync-no-vanished now avoids joining stdout & stderr, avoids affecting a non-client run, and gets the rsync status code correctly. - rsync-slash-strip now avoids affecting a non-client run.
Diffstat (limited to 'support/rsync-slash-strip')
-rwxr-xr-xsupport/rsync-slash-strip9
1 files changed, 8 insertions, 1 deletions
diff --git a/support/rsync-slash-strip b/support/rsync-slash-strip
index 2869e45c..b57e61c5 100755
--- a/support/rsync-slash-strip
+++ b/support/rsync-slash-strip
@@ -6,12 +6,19 @@
#
# To use this, name it something like "rs", put it somewhere in your path, and
# then use "rs" in place of "rsync" when you are typing your copy commands.
+
+REAL_RSYNC=/usr/bin/rsync
+
args=()
for arg in "${@}"; do
+ if [[ "$arg" == --server ]]; then
+ exec $REAL_RSYNC "${@}"
+ exit $? # Not reached
+ fi
if [[ "$arg" == / ]]; then
args=("${args[@]}" /)
else
args=("${args[@]}" "${arg%/}")
fi
done
-exec /usr/bin/rsync "${args[@]}"
+exec $REAL_RSYNC "${args[@]}"