mirror of
https://github.com/RsyncProject/rsync.git
synced 2026-05-19 04:15:56 -04:00
Translate man page's option list into .h files for options.h to use.
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -18,6 +18,7 @@ aclocal.m4
|
||||
/rsync*.1
|
||||
/rsync*.5
|
||||
/rsync*.html
|
||||
/help-rsync*.h
|
||||
/.md2man-works
|
||||
/autom4te*.cache
|
||||
/confdefs.h
|
||||
|
||||
22
Makefile.in
22
Makefile.in
@@ -99,10 +99,30 @@ rsync$(EXEEXT): $(OBJS)
|
||||
|
||||
$(OBJS): $(HEADERS)
|
||||
$(CHECK_OBJS): $(HEADERS)
|
||||
options.o: latest-year.h
|
||||
options.o: latest-year.h help-rsync.h help-rsyncd.h
|
||||
|
||||
flist.o: rounding.h
|
||||
|
||||
help-rsync.h: rsync.1.md
|
||||
@sed -e '1,/^# OPTIONS SUMMARY/d' \
|
||||
-e '1,/^```/d' \
|
||||
-e '/^```/,$$d' \
|
||||
-e 's/"/\\"/g' \
|
||||
-e 's/^/ rprintf(F,"/' \
|
||||
-e 's/$$/\\n");/' \
|
||||
<"$(srcdir)/$<" >$@
|
||||
|
||||
help-rsyncd.h: rsync.1.md
|
||||
@sed -e '1,/^# OPTIONS SUMMARY/d' \
|
||||
-e '1,/^```/d' \
|
||||
-e '1,/^```/d' \
|
||||
-e '1,/^```/d' \
|
||||
-e '/^```/,$$d' \
|
||||
-e 's/"/\\"/g' \
|
||||
-e 's/^/ rprintf(F,"/' \
|
||||
-e 's/$$/\\n");/' \
|
||||
<"$(srcdir)/$<" >$@
|
||||
|
||||
rounding.h: rounding.c rsync.h proto.h
|
||||
@for r in 0 1 3; do \
|
||||
if $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o rounding -DEXTRA_ROUNDING=$$r -I. $(srcdir)/rounding.c >rounding.out 2>&1; then \
|
||||
|
||||
164
options.c
164
options.c
@@ -728,154 +728,7 @@ void usage(enum logcode F)
|
||||
rprintf(F,"to an rsync daemon, and require SRC or DEST to start with a module name.\n");
|
||||
rprintf(F,"\n");
|
||||
rprintf(F,"Options\n");
|
||||
rprintf(F," -v, --verbose increase verbosity\n");
|
||||
rprintf(F," --info=FLAGS fine-grained informational verbosity\n");
|
||||
rprintf(F," --debug=FLAGS fine-grained debug verbosity\n");
|
||||
rprintf(F," --msgs2stderr output messages directly to stderr\n");
|
||||
rprintf(F," -q, --quiet suppress non-error messages\n");
|
||||
rprintf(F," --no-motd suppress daemon-mode MOTD (see manpage caveat)\n");
|
||||
rprintf(F," -c, --checksum skip based on checksum, not mod-time & size\n");
|
||||
rprintf(F," -a, --archive archive mode; equals -rlptgoD (no -H,-A,-X)\n");
|
||||
rprintf(F," --no-OPTION turn off an implied OPTION (e.g. --no-D)\n");
|
||||
rprintf(F," -r, --recursive recurse into directories\n");
|
||||
rprintf(F," -R, --relative use relative path names\n");
|
||||
rprintf(F," --no-implied-dirs don't send implied dirs with --relative\n");
|
||||
rprintf(F," -b, --backup make backups (see --suffix & --backup-dir)\n");
|
||||
rprintf(F," --backup-dir=DIR make backups into hierarchy based in DIR\n");
|
||||
rprintf(F," --suffix=SUFFIX set backup suffix (default %s w/o --backup-dir)\n",BACKUP_SUFFIX);
|
||||
rprintf(F," -u, --update skip files that are newer on the receiver\n");
|
||||
rprintf(F," --inplace update destination files in-place (SEE MAN PAGE)\n");
|
||||
rprintf(F," --append append data onto shorter files\n");
|
||||
rprintf(F," --append-verify like --append, but with old data in file checksum\n");
|
||||
rprintf(F," -d, --dirs transfer directories without recursing\n");
|
||||
rprintf(F," -l, --links copy symlinks as symlinks\n");
|
||||
rprintf(F," -L, --copy-links transform symlink into referent file/dir\n");
|
||||
rprintf(F," --copy-unsafe-links only \"unsafe\" symlinks are transformed\n");
|
||||
rprintf(F," --safe-links ignore symlinks that point outside the source tree\n");
|
||||
rprintf(F," --munge-links munge symlinks to make them safer (but unusable)\n");
|
||||
rprintf(F," -k, --copy-dirlinks transform symlink to a dir into referent dir\n");
|
||||
rprintf(F," -K, --keep-dirlinks treat symlinked dir on receiver as dir\n");
|
||||
rprintf(F," -H, --hard-links preserve hard links\n");
|
||||
rprintf(F," -p, --perms preserve permissions\n");
|
||||
rprintf(F," -E, --executability preserve the file's executability\n");
|
||||
rprintf(F," --chmod=CHMOD affect file and/or directory permissions\n");
|
||||
#ifdef SUPPORT_ACLS
|
||||
rprintf(F," -A, --acls preserve ACLs (implies --perms)\n");
|
||||
#endif
|
||||
#ifdef SUPPORT_XATTRS
|
||||
rprintf(F," -X, --xattrs preserve extended attributes\n");
|
||||
#endif
|
||||
rprintf(F," -o, --owner preserve owner (super-user only)\n");
|
||||
rprintf(F," -g, --group preserve group\n");
|
||||
rprintf(F," --devices preserve device files (super-user only)\n");
|
||||
rprintf(F," --specials preserve special files\n");
|
||||
rprintf(F," -D same as --devices --specials\n");
|
||||
rprintf(F," -t, --times preserve modification times\n");
|
||||
rprintf(F," -U, --atimes preserve access (last-used) times\n");
|
||||
rprintf(F," --open-noatime avoid changing the atime on opened files\n");
|
||||
rprintf(F," -O, --omit-dir-times omit directories from --times\n");
|
||||
rprintf(F," -J, --omit-link-times omit symlinks from --times\n");
|
||||
rprintf(F," --super receiver attempts super-user activities\n");
|
||||
#ifdef SUPPORT_XATTRS
|
||||
rprintf(F," --fake-super store/recover privileged attrs using xattrs\n");
|
||||
#endif
|
||||
rprintf(F," -S, --sparse turn sequences of nulls into sparse blocks\n");
|
||||
#ifdef SUPPORT_PREALLOCATION
|
||||
rprintf(F," --preallocate allocate dest files before writing them\n");
|
||||
#else
|
||||
rprintf(F," --preallocate pre-allocate dest files on remote receiver\n");
|
||||
#endif
|
||||
rprintf(F," --write-devices write to devices as files (implies --inplace)\n");
|
||||
rprintf(F," -n, --dry-run perform a trial run with no changes made\n");
|
||||
rprintf(F," -W, --whole-file copy files whole (without delta-xfer algorithm)\n");
|
||||
rprintf(F," --checksum-choice=STR choose the checksum algorithms\n");
|
||||
rprintf(F," -x, --one-file-system don't cross filesystem boundaries\n");
|
||||
rprintf(F," -B, --block-size=SIZE force a fixed checksum block-size\n");
|
||||
rprintf(F," -e, --rsh=COMMAND specify the remote shell to use\n");
|
||||
rprintf(F," --rsync-path=PROGRAM specify the rsync to run on the remote machine\n");
|
||||
rprintf(F," --existing skip creating new files on receiver\n");
|
||||
rprintf(F," --ignore-existing skip updating files that already exist on receiver\n");
|
||||
rprintf(F," --remove-source-files sender removes synchronized files (non-dirs)\n");
|
||||
rprintf(F," --del an alias for --delete-during\n");
|
||||
rprintf(F," --delete delete extraneous files from destination dirs\n");
|
||||
rprintf(F," --delete-before receiver deletes before transfer, not during\n");
|
||||
rprintf(F," --delete-during receiver deletes during the transfer\n");
|
||||
rprintf(F," --delete-delay find deletions during, delete after\n");
|
||||
rprintf(F," --delete-after receiver deletes after transfer, not during\n");
|
||||
rprintf(F," --delete-excluded also delete excluded files from destination dirs\n");
|
||||
rprintf(F," --ignore-missing-args ignore missing source args without error\n");
|
||||
rprintf(F," --delete-missing-args delete missing source args from destination\n");
|
||||
rprintf(F," --ignore-errors delete even if there are I/O errors\n");
|
||||
rprintf(F," --force force deletion of directories even if not empty\n");
|
||||
rprintf(F," --max-delete=NUM don't delete more than NUM files\n");
|
||||
rprintf(F," --max-size=SIZE don't transfer any file larger than SIZE\n");
|
||||
rprintf(F," --min-size=SIZE don't transfer any file smaller than SIZE\n");
|
||||
rprintf(F," --partial keep partially transferred files\n");
|
||||
rprintf(F," --partial-dir=DIR put a partially transferred file into DIR\n");
|
||||
rprintf(F," --delay-updates put all updated files into place at transfer's end\n");
|
||||
rprintf(F," -m, --prune-empty-dirs prune empty directory chains from the file-list\n");
|
||||
rprintf(F," --numeric-ids don't map uid/gid values by user/group name\n");
|
||||
rprintf(F," --usermap=STRING custom username mapping\n");
|
||||
rprintf(F," --groupmap=STRING custom groupname mapping\n");
|
||||
rprintf(F," --chown=USER:GROUP simple username/groupname mapping\n");
|
||||
rprintf(F," --timeout=SECONDS set I/O timeout in seconds\n");
|
||||
rprintf(F," --contimeout=SECONDS set daemon connection timeout in seconds\n");
|
||||
rprintf(F," -I, --ignore-times don't skip files that match in size and mod-time\n");
|
||||
rprintf(F," -M, --remote-option=OPTION send OPTION to the remote side only\n");
|
||||
rprintf(F," --size-only skip files that match in size\n");
|
||||
rprintf(F," -@, --modify-window=NUM set the accuracy for mod-time comparisons\n");
|
||||
rprintf(F," -T, --temp-dir=DIR create temporary files in directory DIR\n");
|
||||
rprintf(F," -y, --fuzzy find similar file for basis if no dest file\n");
|
||||
rprintf(F," --compare-dest=DIR also compare destination files relative to DIR\n");
|
||||
rprintf(F," --copy-dest=DIR ... and include copies of unchanged files\n");
|
||||
rprintf(F," --link-dest=DIR hardlink to files in DIR when unchanged\n");
|
||||
rprintf(F," -z, --compress compress file data during the transfer\n");
|
||||
rprintf(F," --compress-level=NUM explicitly set compression level\n");
|
||||
rprintf(F," --skip-compress=LIST skip compressing files with a suffix in LIST\n");
|
||||
rprintf(F," -C, --cvs-exclude auto-ignore files the same way CVS does\n");
|
||||
rprintf(F," -f, --filter=RULE add a file-filtering RULE\n");
|
||||
rprintf(F," -F same as --filter='dir-merge /.rsync-filter'\n");
|
||||
rprintf(F," repeated: --filter='- .rsync-filter'\n");
|
||||
rprintf(F," --exclude=PATTERN exclude files matching PATTERN\n");
|
||||
rprintf(F," --exclude-from=FILE read exclude patterns from FILE\n");
|
||||
rprintf(F," --include=PATTERN don't exclude files matching PATTERN\n");
|
||||
rprintf(F," --include-from=FILE read include patterns from FILE\n");
|
||||
rprintf(F," --files-from=FILE read list of source-file names from FILE\n");
|
||||
rprintf(F," -0, --from0 all *-from/filter files are delimited by 0s\n");
|
||||
rprintf(F," -s, --protect-args no space-splitting; only wildcard special-chars\n");
|
||||
rprintf(F," --copy-as=USER[:GROUP] specify user & optional group for the copy\n");
|
||||
rprintf(F," --address=ADDRESS bind address for outgoing socket to daemon\n");
|
||||
rprintf(F," --port=PORT specify double-colon alternate port number\n");
|
||||
rprintf(F," --sockopts=OPTIONS specify custom TCP options\n");
|
||||
rprintf(F," --blocking-io use blocking I/O for the remote shell\n");
|
||||
rprintf(F," --stats give some file-transfer stats\n");
|
||||
rprintf(F," -8, --8-bit-output leave high-bit chars unescaped in output\n");
|
||||
rprintf(F," -h, --human-readable output numbers in a human-readable format\n");
|
||||
rprintf(F," --progress show progress during transfer\n");
|
||||
rprintf(F," -P same as --partial --progress\n");
|
||||
rprintf(F," -i, --itemize-changes output a change-summary for all updates\n");
|
||||
rprintf(F," --out-format=FORMAT output updates using the specified FORMAT\n");
|
||||
rprintf(F," --log-file=FILE log what we're doing to the specified FILE\n");
|
||||
rprintf(F," --log-file-format=FMT log updates using the specified FMT\n");
|
||||
rprintf(F," --password-file=FILE read daemon-access password from FILE\n");
|
||||
rprintf(F," --list-only list the files instead of copying them\n");
|
||||
rprintf(F," --bwlimit=RATE limit socket I/O bandwidth\n");
|
||||
#ifdef HAVE_SETVBUF
|
||||
rprintf(F," --outbuf=N|L|B set output buffering to None, Line, or Block\n");
|
||||
#endif
|
||||
rprintf(F," --write-batch=FILE write a batched update to FILE\n");
|
||||
rprintf(F," --only-write-batch=FILE like --write-batch but w/o updating destination\n");
|
||||
rprintf(F," --read-batch=FILE read a batched update from FILE\n");
|
||||
rprintf(F," --protocol=NUM force an older protocol version to be used\n");
|
||||
#ifdef ICONV_OPTION
|
||||
rprintf(F," --iconv=CONVERT_SPEC request charset conversion of filenames\n");
|
||||
#endif
|
||||
rprintf(F," --checksum-seed=NUM set block/file checksum seed (advanced)\n");
|
||||
rprintf(F," -4, --ipv4 prefer IPv4\n");
|
||||
rprintf(F," -6, --ipv6 prefer IPv6\n");
|
||||
rprintf(F," -V, --version print the version & other info and exit\n");
|
||||
rprintf(F,"(-h) --help show this help (-h is --help only if used alone)\n");
|
||||
|
||||
#include "help-rsync.h"
|
||||
rprintf(F,"\n");
|
||||
rprintf(F,"Use \"rsync --daemon --help\" to see the daemon-mode command-line options.\n");
|
||||
rprintf(F,"Please see the rsync(1) and rsyncd.conf(5) man pages for full documentation.\n");
|
||||
@@ -1139,20 +992,7 @@ static void daemon_usage(enum logcode F)
|
||||
|
||||
rprintf(F,"\n");
|
||||
rprintf(F,"Usage: rsync --daemon [OPTION]...\n");
|
||||
rprintf(F," --address=ADDRESS bind to the specified address\n");
|
||||
rprintf(F," --bwlimit=RATE limit socket I/O bandwidth\n");
|
||||
rprintf(F," --config=FILE specify alternate rsyncd.conf file\n");
|
||||
rprintf(F," -M, --dparam=OVERRIDE override global daemon config parameter\n");
|
||||
rprintf(F," --no-detach do not detach from the parent\n");
|
||||
rprintf(F," --port=PORT listen on alternate port number\n");
|
||||
rprintf(F," --log-file=FILE override the \"log file\" setting\n");
|
||||
rprintf(F," --log-file-format=FMT override the \"log format\" setting\n");
|
||||
rprintf(F," --sockopts=OPTIONS specify custom TCP options\n");
|
||||
rprintf(F," -v, --verbose increase verbosity\n");
|
||||
rprintf(F," -4, --ipv4 prefer IPv4\n");
|
||||
rprintf(F," -6, --ipv6 prefer IPv6\n");
|
||||
rprintf(F," --help show this help screen\n");
|
||||
|
||||
#include "help-rsyncd.h"
|
||||
rprintf(F,"\n");
|
||||
rprintf(F,"If you were not trying to invoke rsync as a daemon, avoid using any of the\n");
|
||||
rprintf(F,"daemon-specific rsync options. See also the rsyncd.conf(5) man page.\n");
|
||||
|
||||
296
rsync.1.md
296
rsync.1.md
@@ -327,160 +327,162 @@ This is launched from cron every few hours.
|
||||
Here is a short summary of the options available in rsync. Please refer to the
|
||||
detailed description below for a complete description.
|
||||
|
||||
[comment]: # (Keep these short enough that they'll be under 80 chars when indented by 8 chars.)
|
||||
|
||||
```
|
||||
--verbose, -v increase verbosity
|
||||
--info=FLAGS fine-grained informational verbosity
|
||||
--debug=FLAGS fine-grained debug verbosity
|
||||
--msgs2stderr output messages directly to stderr
|
||||
--quiet, -q suppress non-error messages
|
||||
--no-motd suppress daemon-mode MOTD (see caveat)
|
||||
--checksum, -c skip based on checksum, not mod-time & size
|
||||
--archive, -a archive mode; equals -rlptgoD (no -H,-A,-X)
|
||||
--no-OPTION turn off an implied OPTION (e.g. --no-D)
|
||||
--recursive, -r recurse into directories
|
||||
--relative, -R use relative path names
|
||||
--no-implied-dirs don't send implied dirs with --relative
|
||||
--backup, -b make backups (see --suffix & --backup-dir)
|
||||
--backup-dir=DIR make backups into hierarchy based in DIR
|
||||
--suffix=SUFFIX backup suffix (default ~ w/o --backup-dir)
|
||||
--update, -u skip files that are newer on the receiver
|
||||
--inplace update destination files in-place
|
||||
--append append data onto shorter files
|
||||
--append-verify --append w/old data in file checksum
|
||||
--dirs, -d transfer directories without recursing
|
||||
--links, -l copy symlinks as symlinks
|
||||
--copy-links, -L transform symlink into referent file/dir
|
||||
--copy-unsafe-links only "unsafe" symlinks are transformed
|
||||
--safe-links ignore symlinks that point outside the tree
|
||||
--munge-links munge symlinks to make them safer
|
||||
--copy-dirlinks, -k transform symlink to dir into referent dir
|
||||
--keep-dirlinks, -K treat symlinked dir on receiver as dir
|
||||
--hard-links, -H preserve hard links
|
||||
--perms, -p preserve permissions
|
||||
--executability, -E preserve executability
|
||||
--chmod=CHMOD affect file and/or directory permissions
|
||||
--acls, -A preserve ACLs (implies -p)
|
||||
--xattrs, -X preserve extended attributes
|
||||
--owner, -o preserve owner (super-user only)
|
||||
--group, -g preserve group
|
||||
--devices preserve device files (super-user only)
|
||||
--specials preserve special files
|
||||
-D same as --devices --specials
|
||||
--times, -t preserve modification times
|
||||
--atimes, -U preserve access (use) times
|
||||
--open-noatime avoid changing the atime on opened files
|
||||
--omit-dir-times, -O omit directories from --times
|
||||
--omit-link-times, -J omit symlinks from --times
|
||||
--super receiver attempts super-user activities
|
||||
--fake-super store/recover privileged attrs using xattrs
|
||||
--sparse, -S turn sequences of nulls into sparse blocks
|
||||
--preallocate allocate dest files before writing
|
||||
--write-devices write to devices as files (implies --inplace)
|
||||
--dry-run, -n perform a trial run with no changes made
|
||||
--whole-file, -W copy files whole (w/o delta-xfer algorithm)
|
||||
--checksum-choice=STR choose the checksum algorithms
|
||||
--one-file-system, -x don't cross filesystem boundaries
|
||||
--block-size=SIZE, -B force a fixed checksum block-size
|
||||
--rsh=COMMAND, -e specify the remote shell to use
|
||||
--rsync-path=PROGRAM specify the rsync to run on remote machine
|
||||
--existing skip creating new files on receiver
|
||||
--ignore-existing skip updating files that exist on receiver
|
||||
--remove-source-files sender removes synchronized files (non-dir)
|
||||
--del an alias for --delete-during
|
||||
--delete delete extraneous files from dest dirs
|
||||
--delete-before receiver deletes before xfer, not during
|
||||
--delete-during receiver deletes during the transfer
|
||||
--delete-delay find deletions during, delete after
|
||||
--delete-after receiver deletes after transfer, not during
|
||||
--delete-excluded also delete excluded files from dest dirs
|
||||
--ignore-missing-args ignore missing source args without error
|
||||
--delete-missing-args delete missing source args from destination
|
||||
--ignore-errors delete even if there are I/O errors
|
||||
--force force deletion of dirs even if not empty
|
||||
--max-delete=NUM don't delete more than NUM files
|
||||
--max-size=SIZE don't transfer any file larger than SIZE
|
||||
--min-size=SIZE don't transfer any file smaller than SIZE
|
||||
--partial keep partially transferred files
|
||||
--partial-dir=DIR put a partially transferred file into DIR
|
||||
--delay-updates put all updated files into place at end
|
||||
--prune-empty-dirs, -m prune empty directory chains from file-list
|
||||
--numeric-ids don't map uid/gid values by user/group name
|
||||
--usermap=STRING custom username mapping
|
||||
--groupmap=STRING custom groupname mapping
|
||||
--chown=USER:GROUP simple username/groupname mapping
|
||||
--timeout=SECONDS set I/O timeout in seconds
|
||||
--contimeout=SECONDS set daemon connection timeout in seconds
|
||||
--ignore-times, -I don't skip files that match size and time
|
||||
--size-only skip files that match in size
|
||||
--modify-window=NUM, -@ set the accuracy for mod-time comparisons
|
||||
--temp-dir=DIR, -T create temporary files in directory DIR
|
||||
--fuzzy, -y find similar file for basis if no dest file
|
||||
--compare-dest=DIR also compare received files relative to DIR
|
||||
--copy-dest=DIR ... and include copies of unchanged files
|
||||
--link-dest=DIR hardlink to files in DIR when unchanged
|
||||
--compress, -z compress file data during the transfer
|
||||
--compress-level=NUM explicitly set compression level
|
||||
--skip-compress=LIST skip compressing files with suffix in LIST
|
||||
--cvs-exclude, -C auto-ignore files in the same way CVS does
|
||||
--filter=RULE, -f add a file-filtering RULE
|
||||
-F same as --filter='dir-merge /.rsync-filter'
|
||||
repeated: --filter='- .rsync-filter'
|
||||
--exclude=PATTERN exclude files matching PATTERN
|
||||
--exclude-from=FILE read exclude patterns from FILE
|
||||
--include=PATTERN don't exclude files matching PATTERN
|
||||
--include-from=FILE read include patterns from FILE
|
||||
--files-from=FILE read list of source-file names from FILE
|
||||
--from0, -0 all *from/filter files are delimited by 0s
|
||||
--protect-args, -s no space-splitting; wildcard chars only
|
||||
--copy-as=USER[:GROUP] specify user & optional group for the copy
|
||||
--address=ADDRESS bind address for outgoing socket to daemon
|
||||
--port=PORT specify double-colon alternate port number
|
||||
--sockopts=OPTIONS specify custom TCP options
|
||||
--blocking-io use blocking I/O for the remote shell
|
||||
--outbuf=N|L|B set out buffering to None, Line, or Block
|
||||
--stats give some file-transfer stats
|
||||
--8-bit-output, -8 leave high-bit chars unescaped in output
|
||||
--human-readable, -h output numbers in a human-readable format
|
||||
--progress show progress during transfer
|
||||
-P same as --partial --progress
|
||||
--itemize-changes, -i output a change-summary for all updates
|
||||
--remote-option=OPTION, -M send OPTION to the remote side only
|
||||
--out-format=FORMAT output updates using the specified FORMAT
|
||||
--log-file=FILE log what we're doing to the specified FILE
|
||||
--log-file-format=FMT log updates using the specified FMT
|
||||
--password-file=FILE read daemon-access password from FILE
|
||||
--list-only list the files instead of copying them
|
||||
--bwlimit=RATE limit socket I/O bandwidth
|
||||
--write-batch=FILE write a batched update to FILE
|
||||
--only-write-batch=FILE like --write-batch but w/o updating dest
|
||||
--read-batch=FILE read a batched update from FILE
|
||||
--protocol=NUM force an older protocol version to be used
|
||||
--iconv=CONVERT_SPEC request charset conversion of filenames
|
||||
--checksum-seed=NUM set block/file checksum seed (advanced)
|
||||
--ipv4, -4 prefer IPv4
|
||||
--ipv6, -6 prefer IPv6
|
||||
--version, -V print the version + other info and exit
|
||||
--help, -h (*) show this help (*see below for -h comment)
|
||||
--verbose, -v increase verbosity
|
||||
--info=FLAGS fine-grained informational verbosity
|
||||
--debug=FLAGS fine-grained debug verbosity
|
||||
--msgs2stderr output messages directly to stderr
|
||||
--quiet, -q suppress non-error messages
|
||||
--no-motd suppress daemon-mode MOTD
|
||||
--checksum, -c skip based on checksum, not mod-time & size
|
||||
--archive, -a archive mode; equals -rlptgoD (no -H,-A,-X)
|
||||
--no-OPTION turn off an implied OPTION (e.g. --no-D)
|
||||
--recursive, -r recurse into directories
|
||||
--relative, -R use relative path names
|
||||
--no-implied-dirs don't send implied dirs with --relative
|
||||
--backup, -b make backups (see --suffix & --backup-dir)
|
||||
--backup-dir=DIR make backups into hierarchy based in DIR
|
||||
--suffix=SUFFIX backup suffix (default ~ w/o --backup-dir)
|
||||
--update, -u skip files that are newer on the receiver
|
||||
--inplace update destination files in-place
|
||||
--append append data onto shorter files
|
||||
--append-verify --append w/old data in file checksum
|
||||
--dirs, -d transfer directories without recursing
|
||||
--links, -l copy symlinks as symlinks
|
||||
--copy-links, -L transform symlink into referent file/dir
|
||||
--copy-unsafe-links only "unsafe" symlinks are transformed
|
||||
--safe-links ignore symlinks that point outside the tree
|
||||
--munge-links munge symlinks to make them safe & unusable
|
||||
--copy-dirlinks, -k transform symlink to dir into referent dir
|
||||
--keep-dirlinks, -K treat symlinked dir on receiver as dir
|
||||
--hard-links, -H preserve hard links
|
||||
--perms, -p preserve permissions
|
||||
--executability, -E preserve executability
|
||||
--chmod=CHMOD affect file and/or directory permissions
|
||||
--acls, -A preserve ACLs (implies --perms)
|
||||
--xattrs, -X preserve extended attributes
|
||||
--owner, -o preserve owner (super-user only)
|
||||
--group, -g preserve group
|
||||
--devices preserve device files (super-user only)
|
||||
--specials preserve special files
|
||||
-D same as --devices --specials
|
||||
--times, -t preserve modification times
|
||||
--atimes, -U preserve access (use) times
|
||||
--open-noatime avoid changing the atime on opened files
|
||||
--omit-dir-times, -O omit directories from --times
|
||||
--omit-link-times, -J omit symlinks from --times
|
||||
--super receiver attempts super-user activities
|
||||
--fake-super store/recover privileged attrs using xattrs
|
||||
--sparse, -S turn sequences of nulls into sparse blocks
|
||||
--preallocate allocate dest files before writing them
|
||||
--write-devices write to devices as files (implies --inplace)
|
||||
--dry-run, -n perform a trial run with no changes made
|
||||
--whole-file, -W copy files whole (w/o delta-xfer algorithm)
|
||||
--checksum-choice=STR choose the checksum algorithms
|
||||
--one-file-system, -x don't cross filesystem boundaries
|
||||
--block-size=SIZE, -B force a fixed checksum block-size
|
||||
--rsh=COMMAND, -e specify the remote shell to use
|
||||
--rsync-path=PROGRAM specify the rsync to run on remote machine
|
||||
--existing skip creating new files on receiver
|
||||
--ignore-existing skip updating files that exist on receiver
|
||||
--remove-source-files sender removes synchronized files (non-dir)
|
||||
--del an alias for --delete-during
|
||||
--delete delete extraneous files from dest dirs
|
||||
--delete-before receiver deletes before xfer, not during
|
||||
--delete-during receiver deletes during the transfer
|
||||
--delete-delay find deletions during, delete after
|
||||
--delete-after receiver deletes after transfer, not during
|
||||
--delete-excluded also delete excluded files from dest dirs
|
||||
--ignore-missing-args ignore missing source args without error
|
||||
--delete-missing-args delete missing source args from destination
|
||||
--ignore-errors delete even if there are I/O errors
|
||||
--force force deletion of dirs even if not empty
|
||||
--max-delete=NUM don't delete more than NUM files
|
||||
--max-size=SIZE don't transfer any file larger than SIZE
|
||||
--min-size=SIZE don't transfer any file smaller than SIZE
|
||||
--partial keep partially transferred files
|
||||
--partial-dir=DIR put a partially transferred file into DIR
|
||||
--delay-updates put all updated files into place at end
|
||||
--prune-empty-dirs, -m prune empty directory chains from file-list
|
||||
--numeric-ids don't map uid/gid values by user/group name
|
||||
--usermap=STRING custom username mapping
|
||||
--groupmap=STRING custom groupname mapping
|
||||
--chown=USER:GROUP simple username/groupname mapping
|
||||
--timeout=SECONDS set I/O timeout in seconds
|
||||
--contimeout=SECONDS set daemon connection timeout in seconds
|
||||
--ignore-times, -I don't skip files that match size and time
|
||||
--size-only skip files that match in size
|
||||
--modify-window=NUM, -@ set the accuracy for mod-time comparisons
|
||||
--temp-dir=DIR, -T create temporary files in directory DIR
|
||||
--fuzzy, -y find similar file for basis if no dest file
|
||||
--compare-dest=DIR also compare destination files relative to DIR
|
||||
--copy-dest=DIR ... and include copies of unchanged files
|
||||
--link-dest=DIR hardlink to files in DIR when unchanged
|
||||
--compress, -z compress file data during the transfer
|
||||
--compress-level=NUM explicitly set compression level
|
||||
--skip-compress=LIST skip compressing files with suffix in LIST
|
||||
--cvs-exclude, -C auto-ignore files in the same way CVS does
|
||||
--filter=RULE, -f add a file-filtering RULE
|
||||
-F same as --filter='dir-merge /.rsync-filter'
|
||||
repeated: --filter='- .rsync-filter'
|
||||
--exclude=PATTERN exclude files matching PATTERN
|
||||
--exclude-from=FILE read exclude patterns from FILE
|
||||
--include=PATTERN don't exclude files matching PATTERN
|
||||
--include-from=FILE read include patterns from FILE
|
||||
--files-from=FILE read list of source-file names from FILE
|
||||
--from0, -0 all *-from/filter files are delimited by 0s
|
||||
--protect-args, -s no space-splitting; wildcard chars only
|
||||
--copy-as=USER[:GROUP] specify user & optional group for the copy
|
||||
--address=ADDRESS bind address for outgoing socket to daemon
|
||||
--port=PORT specify double-colon alternate port number
|
||||
--sockopts=OPTIONS specify custom TCP options
|
||||
--blocking-io use blocking I/O for the remote shell
|
||||
--outbuf=N|L|B set out buffering to None, Line, or Block
|
||||
--stats give some file-transfer stats
|
||||
--8-bit-output, -8 leave high-bit chars unescaped in output
|
||||
--human-readable, -h output numbers in a human-readable format
|
||||
--progress show progress during transfer
|
||||
-P same as --partial --progress
|
||||
--itemize-changes, -i output a change-summary for all updates
|
||||
--remote-option=OPT, -M send OPTION to the remote side only
|
||||
--out-format=FORMAT output updates using the specified FORMAT
|
||||
--log-file=FILE log what we're doing to the specified FILE
|
||||
--log-file-format=FMT log updates using the specified FMT
|
||||
--password-file=FILE read daemon-access password from FILE
|
||||
--list-only list the files instead of copying them
|
||||
--bwlimit=RATE limit socket I/O bandwidth
|
||||
--write-batch=FILE write a batched update to FILE
|
||||
--only-write-batch=FILE like --write-batch but w/o updating dest
|
||||
--read-batch=FILE read a batched update from FILE
|
||||
--protocol=NUM force an older protocol version to be used
|
||||
--iconv=CONVERT_SPEC request charset conversion of filenames
|
||||
--checksum-seed=NUM set block/file checksum seed (advanced)
|
||||
--ipv4, -4 prefer IPv4
|
||||
--ipv6, -6 prefer IPv6
|
||||
--version, -V print the version + other info and exit
|
||||
--help, -h (*) show this help (* -h is help only on its own)
|
||||
```
|
||||
|
||||
Rsync can also be run as a daemon, in which case the following options are
|
||||
accepted:
|
||||
|
||||
```
|
||||
--daemon run as an rsync daemon
|
||||
--address=ADDRESS bind to the specified address
|
||||
--bwlimit=RATE limit socket I/O bandwidth
|
||||
--config=FILE specify alternate rsyncd.conf file
|
||||
--dparam=OVERRIDE, -M override global daemon config parameter
|
||||
--no-detach do not detach from the parent
|
||||
--port=PORT listen on alternate port number
|
||||
--log-file=FILE override the "log file" setting
|
||||
--log-file-format=FMT override the "log format" setting
|
||||
--sockopts=OPTIONS specify custom TCP options
|
||||
--verbose, -v increase verbosity
|
||||
--ipv4, -4 prefer IPv4
|
||||
--ipv6, -6 prefer IPv6
|
||||
--help, -h show this help (if used after --daemon)
|
||||
--daemon run as an rsync daemon
|
||||
--address=ADDRESS bind to the specified address
|
||||
--bwlimit=RATE limit socket I/O bandwidth
|
||||
--config=FILE specify alternate rsyncd.conf file
|
||||
--dparam=OVERRIDE, -M override global daemon config parameter
|
||||
--no-detach do not detach from the parent
|
||||
--port=PORT listen on alternate port number
|
||||
--log-file=FILE override the "log file" setting
|
||||
--log-file-format=FMT override the "log format" setting
|
||||
--sockopts=OPTIONS specify custom TCP options
|
||||
--verbose, -v increase verbosity
|
||||
--ipv4, -4 prefer IPv4
|
||||
--ipv6, -6 prefer IPv6
|
||||
--help, -h show this help (when used with --daemon)
|
||||
```
|
||||
|
||||
# OPTIONS
|
||||
|
||||
Reference in New Issue
Block a user