Compare commits
3 Commits
b6568cf471
...
4a76b5440c
| Author | SHA1 | Date |
|---|---|---|
|
|
4a76b5440c | |
|
|
ae200cb416 | |
|
|
b57a34226e |
18
icp
18
icp
|
|
@ -3,10 +3,12 @@ usage() {
|
||||||
echo >&2 "Usage: $(basename $0) [OPTION] SOURCE... DEST"
|
echo >&2 "Usage: $(basename $0) [OPTION] SOURCE... DEST"
|
||||||
echo >&2 "Copy like cp, but use rsync in the background."
|
echo >&2 "Copy like cp, but use rsync in the background."
|
||||||
echo >&2 "Options:"
|
echo >&2 "Options:"
|
||||||
echo >&2 " -h print this help message"
|
echo >&2 " -h print this help message"
|
||||||
echo >&2 " -n print rsync command and perform a dry-run"
|
echo >&2 " -L follow symlinks in source"
|
||||||
echo >&2 " -r copy directories recursively"
|
echo >&2 " -n no-clobber, do not overwrite existing files"
|
||||||
echo >&2 " -v verbose output"
|
echo >&2 " -r copy directories recursively"
|
||||||
|
echo >&2 " -v verbose output"
|
||||||
|
echo >&2 " --dry-run print rsync command and perform a dry-run"
|
||||||
echo >&2 "Positional arguments:"
|
echo >&2 "Positional arguments:"
|
||||||
echo >&2 " SOURCE file/directory to copy"
|
echo >&2 " SOURCE file/directory to copy"
|
||||||
echo >&2 " DEST target directory or filename (if only one SOURCE)"
|
echo >&2 " DEST target directory or filename (if only one SOURCE)"
|
||||||
|
|
@ -21,7 +23,7 @@ EXIT_INVALID_PATH=3 # rsync: Errors selecting input/output files, dirs
|
||||||
# -remove trailing slash from directories
|
# -remove trailing slash from directories
|
||||||
flag_recursive=0
|
flag_recursive=0
|
||||||
flag_dryrun=0
|
flag_dryrun=0
|
||||||
rsync_opt=("-lptgoD")
|
rsync_opt=("-lpgoD")
|
||||||
rsync_arg=()
|
rsync_arg=()
|
||||||
for arg in "$@"
|
for arg in "$@"
|
||||||
do
|
do
|
||||||
|
|
@ -31,9 +33,13 @@ do
|
||||||
elif [[ "$arg" == "-r" ]];then
|
elif [[ "$arg" == "-r" ]];then
|
||||||
flag_recursive=1
|
flag_recursive=1
|
||||||
rsync_opt+=("-r")
|
rsync_opt+=("-r")
|
||||||
|
elif [[ "$arg" == "-L" ]];then
|
||||||
|
rsync_opt+=("-L")
|
||||||
elif [[ "$arg" == "-v" ]];then
|
elif [[ "$arg" == "-v" ]];then
|
||||||
rsync_opt+=("-v")
|
rsync_opt+=("-v")
|
||||||
elif [[ "$arg" == "-n" ]];then
|
elif [[ "$arg" == "-n" ]];then
|
||||||
|
rsync_opt+=("--ignore-existing")
|
||||||
|
elif [[ "$arg" == "--dry-run" ]];then
|
||||||
flag_dryrun=1
|
flag_dryrun=1
|
||||||
rsync_opt+=("-nv")
|
rsync_opt+=("-nv")
|
||||||
elif [[ -f "$arg" ]];then
|
elif [[ -f "$arg" ]];then
|
||||||
|
|
@ -65,7 +71,7 @@ fi
|
||||||
# If this is not a dry-run, add a nice overall
|
# If this is not a dry-run, add a nice overall
|
||||||
# progress bar
|
# progress bar
|
||||||
if [[ "$flag_dryrun" -eq 0 ]]; then
|
if [[ "$flag_dryrun" -eq 0 ]]; then
|
||||||
rsync_opt+=("--info=progress2")
|
rsync_opt+=("--info=progress2 --no-inc-recursive")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Construct command
|
# Construct command
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue