X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/ba2d43d702377fcfbb7b469b27b63ce9f0d7a2f4..27999abab48979c7306a1c335f8e264c6c200457:/rsync.yo diff --git a/rsync.yo b/rsync.yo index 3fcb7104..a98d1eab 100644 --- a/rsync.yo +++ b/rsync.yo @@ -405,6 +405,7 @@ to the detailed description below for a complete description. verb( --include-from=FILE read include patterns from FILE --files-from=FILE read list of source-file names from FILE -0, --from0 all *from/filter files are delimited by 0s + -s, --protect-args no space-splitting; wildcard chars only --address=ADDRESS bind address for outgoing socket to daemon --port=PORT specify double-colon alternate port number --sockopts=OPTIONS specify custom TCP options @@ -584,7 +585,7 @@ explicitly). See also the bf(--delete-delay) option that is a better choice than using bf(--delete-after). Incremental recursion can be disabled using the bf(--no-inc-recursive) -option or its shorter bf(--no-ir) alias. +option or its shorter bf(--no-i-r) alias. dit(bf(-R, --relative)) Use relative paths. This means that the full path names specified on the command line are sent to the server rather than @@ -804,8 +805,9 @@ are in the list of files being sent. If incremental recursion is active (see bf(--recursive)), rsync may transfer a missing hard-linked file before it finds that another link for the file -exists elsewhere in the hierarchy. One way to avoid this is to disable -incremental recursion using the bf(--no-ir) option. +exists elsewhere in the hierarchy. This does not affect the accuracy of +the transfer, just its efficiency. One way to avoid this is to disable +incremental recursion using the bf(--no-inc-recursive) option. dit(bf(-p, --perms)) This option causes the receiving rsync to set the destination permissions to be the same as the source permissions. (See @@ -1351,6 +1353,21 @@ merged files specified in a bf(--filter) rule. It does not affect bf(--cvs-exclude) (since all names read from a .cvsignore file are split on whitespace). +If the bf(--iconv) and bf(--protect-args) options are specified and the +bf(--files-from) filenames are being sent from one host to another, the +filenames will be translated from the sending host's charset to the +receiving host's charset. + +dit(bf(-s, --protect-args)) This option sends all filenames and some options to +the remote rsync without allowing the remote shell to interpret them. This +means that spaces are not split in names, and any non-wildcard special +characters are not translated (such as ~, $, ;, &, etc.). Wildcards are +expanded on the remote host by rsync (instead of the shell doing it). + +If you use this option with bf(--iconv), the args will also be translated +from the local to the remote character set. The translation happens before +wild-cards are expanded. See also the bf(--files-from) option. + dit(bf(-T, --temp-dir=DIR)) This option instructs rsync to use DIR as a scratch directory when creating temporary copies of the files transferred on the receiving side. The default behavior is to create each temporary @@ -1952,14 +1969,15 @@ Finally, you can specify a CONVERT_SPEC of "-" to turn off any conversion. The default setting of this option is site-specific, and can also be affected via the RSYNC_ICONV environment variable. +If you specify the bf(--protect-args) option (bf(-s)), rsync will translate +the filenames you specify on the command-line that are being sent to the +remote host. See also the bf(--files-from) option. + Note that rsync does not do any conversion of names in filter files -(including include/exclude files), in a files-from file, nor those -specified on the command line. It is up to you to ensure that you're -requesting the right names from a remote server, and you can specify -extra include/exclude rules if there are filename differences on the -two sides that need to be accounted for. (In the future there may be -a way to specify a UTF-8 filter rule that gets auto-converted to the -local side's character set.) +(including include/exclude files). It is up to you to ensure that you're +specifying matching rules that can match on both sides of the transfer. +For instance, you can specify extra include/exclude rules if there are +filename differences on the two sides that need to be accounted for. dit(bf(-4, --ipv4) or bf(-6, --ipv6)) Tells rsync to prefer IPv4/IPv6 when creating sockets. This only affects sockets that rsync has direct