#!/bin/bash #Copyright 2002 William Stearns #Released under the GPL. RMVersion='0.1' #--numeric-ids, -H and -R can be added as additional params ConfFile='/etc/rsync-mirror.conf' if [ ! -r "$ConfFile" ]; then echo Missing or unreadable configuration file "$ConfFile". Exiting. exit 1 fi #Two less-thans is correct, really. exec 5<&0 < <(cat "$ConfFile" | sed -e 's/#.*//' | grep -v '^$' ) while read Source Target AdditionalParams ; do case "$Source" in */) echo Mirroring directory "$Source" to "$Target" rsync -e ssh -a --delete --delete-after $AdditionalParams $Source $Target ;; *) echo Mirroring "$Source" to "$Target" rsync -e ssh -a --delete --delete-after $AdditionalParams $Source $Target ;; esac done exec 0<&5 5<&-