X-Git-Url: https://www.fleuret.org/cgi-bin/gitweb/gitweb.cgi?p=scripts.git;a=blobdiff_plain;f=freeze-dir.sh;h=0a23b494fdc2cc86162bde1bab5db1a9872caf60;hp=81f4a6d7a98ef635ca96ba188ac486e55f2555ed;hb=d4b247661d2a5e9a9c09c6c6648141726c85fe59;hpb=caef54051c89be32e693aeed90fa915f621fce47 diff --git a/freeze-dir.sh b/freeze-dir.sh index 81f4a6d..0a23b49 100755 --- a/freeze-dir.sh +++ b/freeze-dir.sh @@ -18,9 +18,9 @@ ######################################################################### # This command makes a backup copy of a given directory into a backup -# directory, tags it with the date and time, and uses rsync -# intelligent features to avoid making superfluous copies of files -# which are already backuped. +# directory, tags it with the date and time, and uses rsync smart use +# of hard links to avoid unnecessary duplicates of files already +# backuped. set -e @@ -62,7 +62,7 @@ while [[ "$1" ]]; do if [[ -h "${current_backup}" ]]; then rsync --link-dest="${current_backup}/" -axz "${full_path}/" "${new_backup}/" - rm -f "${current_backup}" + rm "${current_backup}" else if [[ -a ${current_backup} ]]; then echo "${current_backup} exists and is not a symbolic link" >&2 @@ -72,7 +72,7 @@ while [[ "$1" ]]; do fi fi - ln -s "${new_backup}" "${current_backup}" + ln -vs "${new_backup}" "${current_backup}" sync