prezto/modules/rsync/init.zsh

44 lines
988 B
Bash
Raw Normal View History

2012-02-01 04:37:51 +00:00
#
2012-06-14 01:45:23 +00:00
# Defines Rsync aliases.
2012-02-01 04:37:51 +00:00
#
# Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
2012-07-23 19:00:44 +00:00
# Return if requirements are not found.
if (( ! $+commands[rsync] )); then
return 1
fi
# Load dependencies.
pmodload 'helper'
2012-08-04 18:48:32 +00:00
#
2011-08-31 03:16:15 +00:00
# Aliases
2012-08-04 18:48:32 +00:00
#
_rsync_cmd='rsync --verbose --progress --human-readable --compress --archive \
--hard-links --one-file-system'
2012-01-21 00:55:55 +00:00
autoload -Uz is-at-least
if is-at-least 3.1 ${"$(rsync --version 2>&1)"[(w)3]}; then
# ACL and extended attributes support
if grep -q 'xattrs' <(rsync --help 2>&1); then
_rsync_cmd="${_rsync_cmd} --acls --xattrs"
fi
# macOS Enhancements
# https://bombich.com/kb/ccc5/credits
if is-darwin && grep -q 'file-flags' <(rsync --help 2>&1); then
_rsync_cmd="${_rsync_cmd} --crtimes --fileflags --force-change"
fi
2012-01-21 00:55:55 +00:00
fi
alias rsync-copy="${_rsync_cmd}"
alias rsync-move="${_rsync_cmd} --remove-source-files"
alias rsync-update="${_rsync_cmd} --update"
alias rsync-synchronize="${_rsync_cmd} --update --delete"
2011-08-31 03:16:15 +00:00
unset _rsync_cmd