1
0
Fork 0
mirror of https://github.com/notwa/rc synced 2024-11-12 15:49:03 -08:00
rc/sh/autosync

18 lines
536 B
Bash
Executable file

#!/usr/bin/env zsh
# compat: -ash -bash -dash +zsh
# TODO: portable way of dodging aliases to allow other shell support?
autosync() { ### @-
### combine `inotifywait` and `rsync`.
### this is sometimes nicer than `ssh`-ing into a server and running `vim` remotely.
target="$1"
shift
# as a reminder not to get the argument order mixed up:
echo -E "rsyncing to $target" >&2
while inotifywait -q -e create,modify "$@"; do
\rsync -rtl "$@" "$target"
done
}
[ -n "${preload+-}" ] || autosync "$@"