File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / rsync / support / rsync-slash-strip
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Wed Mar 17 00:32:36 2021 UTC (3 years, 7 months ago) by misho
Branches: rsync, MAIN
CVS tags: v3_2_3, HEAD
rsync 3.2.3

#!/usr/bin/env bash
# This script can be used as an rsync command-line filter that strips a single
# trailing slash from each arg.  That treats "src/" the same as "src", thus
# you need to use "src/." or "src//" for just the contents of the "src" dir.
# (Note that command-line dir-excludes would need to use "excl//" too.)
#
# 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.
args=()
for arg in "${@}"; do
    if [[ "$arg" == / ]]; then
	args=("${args[@]}" /)
    else
	args=("${args[@]}" "${arg%/}")
    fi
done
exec /usr/bin/rsync "${args[@]}"

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>