--rsync-path=PATH specify path to rsync on the remote machine
--existing only update files that already exist
--ignore-existing ignore files that already exist on receiver
+ --remove-sent-files sent files/symlinks are removed from sender
--del an alias for --delete-during
--delete delete files that don't exist on sender
--delete-before receiver deletes before transfer (default)
--stats give some file-transfer stats
--progress show progress during transfer
-P same as --partial --progress
- -w, --what-has-changed output a change summary for all updates
+ -i, --itemize-changes output a change-summary for all updates
--log-format=FORMAT log file-transfers using specified format
--password-file=FILE read password from FILE
--list-only list the files instead of copying them
information at the end. More than two bf(-v) flags should only be used if
you are debugging rsync.
+Note that the names of the transferred files that are output are done using
+a default bf(--log-format) of "%n%L", which tells you just the name of the
+file and, if the item is a symlink, where it points. At the single bf(-v)
+level of verbosity, this does not mention when a file gets its attributes
+changed. If you ask for an itemized list of changed attributes (either
+bf(--itemize-changes) or adding "%i" to the bf(--log-format) setting), the
+output (on the client) increases to mention all items that are changed in
+any way. See the bf(--log-format) option for more details.
+
dit(bf(-q, --quiet)) This option decreases the amount of information you
are given during the transfer, notably suppressing information messages
from the remote server. This flag is useful when invoking rsync from
dit(bf(-a, --archive)) This is equivalent to bf(-rlptgoD). It is a quick
way of saying you want recursion and want to preserve almost
everything. The only exception to this is if bf(--files-from) was
-specified, in which case bf(-d) is implied instead of bf(-r).
+specified, in which case bf(-r) is not implied.
Note that bf(-a) bf(does not preserve hardlinks), because
finding multiply-linked files is expensive. You must separately
This tells rsync not to update files that already exist on
the destination.
-dit(bf(--max-delete=NUM)) This tells rsync not to delete more than NUM
-files or directories. This is useful when mirroring very large trees
-to prevent disasters.
-
-dit(bf(--max-size=SIZE)) This tells rsync to avoid transferring any
-file that is larger than the specified SIZE. The SIZE value can be
-suffixed with a letter to indicate a size multiplier (K, M, or G) and
-may be a fractional value (e.g. "bf(--max-size=1.5m)").
+dit(bf(--remove-sent-files)) This tells rsync to remove from the sending
+side the files and/or symlinks that are newly created or whose content is
+updated on the receiving side. Directories and devices are not removed,
+nor are files/symlinks whose attributes are merely changed.
dit(bf(--delete)) This tells rsync to delete extraneous files from the
receiving side (ones that aren't on the sending side), but only for the
is only relevant without bf(--delete) because deletions are now done depth-first.
Requires the bf(--recursive) option (which is implied by bf(-a)) to have any effect.
+dit(bf(--max-delete=NUM)) This tells rsync not to delete more than NUM
+files or directories. This is useful when mirroring very large trees
+to prevent disasters.
+
+dit(bf(--max-size=SIZE)) This tells rsync to avoid transferring any
+file that is larger than the specified SIZE. The SIZE value can be
+suffixed with a letter to indicate a size multiplier (K, M, or G) and
+may be a fractional value (e.g. "bf(--max-size=1.5m)").
+
dit(bf(-B, --block-size=BLOCKSIZE)) This forces the block size used in
the rsync algorithm to a fixed value. It is normally selected based on
the size of each file being updated. See the technical report for details.
dit(bf(--no-blocking-io)) Turn off bf(--blocking-io), for use when it is the
default.
-dit(bf(--what-has-changed)) Outputs a change-summary for each updated
-item. The format is as follows:
-
-quote(tt( *XcstpogDL ITEM_NAME))
-
-The bf(*) will be present if this is a file that is being transferred,
-otherwise it will be replaced with a space. The bf(X) will be replaced by
-one of the following: an "f" for a file, a "d" for a dir, an "L" for a
-symlink, or a "D" for a device. The rest of the letters in the string
-above are the actual letters that will be output if the associated
-attribute for the item is being updated; if not the letter will be replaced
-by either a "-" if no change is occurring, or a "+" if this is a new item.
-The meanings of the attribute letters are as follows:
-
-itemize(
- it() The bf(c) means the checksum of the file is different and will be
- updated by the file transfer (requries bf(--checksum)).
- it() A bf(s) means the size of the file is different and will be updated
- by the file transfer.
- it() A bf(t) means the modified time is being updated to the server's
- value (requires --times, but transferred files without --times will be
- marked with a bf(T) because the time is updated to the transfer time).
- it() A bf(p) means the permissions are being updated (requires
- bf(--perms)).
- it() The bf(o) means the owner is being updated (requires bf(--owner) and
- root privileges).
- it() The bf(g) means the group is being updated (requires bf(--group)).
- it() The bf(D) means the device is being updated (requires bf(--devices)
- and root privileges).
- it() The bf(L) means the symlink value is being updated (requires
- --links).
-)
+dit(bf(-i, --itemize-changes)) Requests a simple itemized list of the
+changes that are being made to each file, including attribute changes.
+This is equivalent to specifying bf(--log-format='%i %n%L'). (See the
+description of what the output of '%i' means in the rsyncd.conf manpage.)
+Rsync also mentions the delete action when an item replaces an item of a
+different type (e.g. a directory replaces a file of the same name).
dit(bf(--log-format=FORMAT)) This allows you to specify exactly what the
-rsync client logs to stdout on a per-file basis. The log format is
-specified using the same format conventions as the log format option in
-rsyncd.conf.
+rsync client logs to stdout on a per-file basis. This format can be used
+without bf(--verbose) to enable just the outputting of the file-transfer
+information, or it can be used to change how the names are output when
+bf(--verbose) is enabled. Rsync will log the name of an item prior to its
+transfer unless one of the transferred-byte-count values is requested, in
+which case the logging is done at the end of the item's transfer. In this
+late-transfer state, if bf(--progress) is also specified, rsync will output
+just the name of the file prior to the progress information.
+
+The log format is specified using the same format conventions as the
+"log format" option in rsyncd.conf, so see that manpage for details.
+(Note that this option does not affect what a daemon logs to its logfile.)
dit(bf(--stats)) This tells rsync to print a verbose set of statistics
on the file transfer, allowing you to tell how effective the rsync