我正在使用 rsync 版本 - 3.1.2.0
/usr/bin/rsync_bpc --version
rsync_bpc version 3.1.2.0 protocol version 31
为了复制文件/opt/dir to /tmp
我还使用 flag---ignore-missing-args
来忽略丢失的源参数而不会出现错误
cd /opt/dir
find . -print0 | /usr/bin/rsync_bpc -0a --files-from=- --ignore-missing-args /opt/dir /tmp
rsync error: syntax or usage error (code 1) at options.c(1859) [client=3.1.2.0]
我的语法有什么问题吗?
答案1
尽管我无法重现您遇到的错误,但用于复制根目录结构的管道/opt/dir
不必要/tmp
地复杂。
复制只需
rsync -a --ignore-missing-args /opt/dir /tmp
这将创建 的/tmp/dir
完整内容/opt/dir
,并且不需要或cd
。find
稍微思考一下,错误可以来自这样一个事实:您似乎正在使用一个名为 的单独编译的二进制文件rsync_bpc
。二进制文件将为复制操作的发送者和接收者rsync_bpc
执行(即使是本地复制)。rsync
如果rsync
您的系统不支持--ignore-missing-args
(记住您的其他问题, 你有一个很古老 rsync
),您可能必须告诉rsync_bpc
使用rsync_bpc
而不是rsync
.
您可以使用以下--rsync-path
选项来做到这一点:
/usr/bin/rsync_bpc --rsync-path=/usr/bin/rsync_bpc -a --ignore-missing-args /opt/dir /tmp