blob: 9e35994f95a3cbbe5b912351c76b4bf71acac20b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
#! /usr/bin/env sh
# https://serverfault.com/a/211083
set -e
DEST="$(cat remote)"
if [ ! -d $DEST ] && [[ ! $DEST =~ ":" ]]; then
echo "Path $DEST does not exist."
exit 1
fi
ARGS=()
FORCE=0
while getopts 'cfdr' opt; do
case "$opt" in
c) # Changes
ARGS+=('--delete')
;;
f) # Full
ARGS+=('--checksum')
;;
d) # Dry
ARGS+=('--dry-run')
;;
r) # Revert
FORCE=1
;;
*)
echo "Unknown argument"
exit 1
;;
esac
done
if [ $FORCE = 0 ]; then
ARGS+=('--update')
fi
rsync --archive --itemize-changes "${ARGS[@]}" ./$2 $DEST
|