#! /bin/sh # Copyright (C) 2004 by Wayne Davison # This program is distributable under the terms of the GNU GPL (see # COPYING). # Make sure we can merge files from multiple directories into one. . "$suitedir/rsync.fns" set -x # Build some files/dirs/links to copy from1dir="${fromdir}1" from2dir="${fromdir}2" from3dir="${fromdir}3" mkdir "$from1dir" "$from2dir" "$from3dir" mkdir "$from2dir"/sub1 "$from3dir"/sub1 mkdir "$from3dir"/sub2 mkdir "$chkdir" "$chkdir"/sub1 "$chkdir"/sub2 echo "one" >"$from1dir"/one cp -p "$from1dir"/one "$from2dir"/one cp -p "$from1dir"/one "$from3dir"/one echo "two" >"$from1dir"/two echo "three" >"$from2dir"/three echo "four" >"$from3dir"/four echo "five" >"$from1dir"/five echo "six" >"$from3dir"/six echo "sub1" >"$from2dir"/sub1/uno cp -p "$from2dir"/sub1/uno "$from3dir"/sub1/uno echo "sub2" >"$from3dir"/sub1/dos echo "sub3" >"$from2dir"/sub1/tres echo "subby" >"$from3dir"/sub2/subby cp -p "$from1dir"/one "$from1dir"/two "$from2dir"/three "$from3dir"/four "$from1dir"/five "$from3dir"/six "$chkdir" cp -p "$from2dir"/sub1/uno "$from3dir"/sub1/dos "$from2dir"/sub1/tres "$chkdir"/sub1 cp -p "$from3dir"/sub2/subby "$chkdir"/sub2 # Get rid of any directory-time differences $RSYNC -av --existing --include='*/' --exclude='*' "$from1dir/" "$from2dir/" "$from3dir/" "$chkdir/" checkit "$RSYNC -aHvv \"$from1dir/\" \"$from2dir/\" \"$from3dir/\" \"$todir/\"" "$chkdir" "$todir" # The script would have aborted on error, so getting here means we've won. exit 0