我试图复制当前和所有子目录中名为“specials.xml”的所有文件,并创build每个子目录的名称。 我使用-R来rsync,因此它为每个相应的子目录创build相对path。 例如,我想要cp:
/home/deploy/admin_xml_files/foo.com/specials.xml /home/deploy/admin_xml_files/bar.com/specials.xml
至:
~/adminxml/foo.com/specials.xml ~/adminxml/bar.com/specials.xml
但是这不起作用:
$ mkdir ~/adminxml/ $ find /home/deploy/admin_xml_files -iname 'specials.xml' -exec rsync -aR ~/adminxml/ {} +
这是说:
错误:复制多个文件时,目标必须是目录。 rsync错误:错误selectinput/输出文件,目录代码3)在main.c(543)[Receiver = 3.0.7] …
这可能与rsync的参数顺序有关,因为它需要是SRC DEST
$ mkdir ~/adminxml/ $ cd /home/deploy/admin_xml_files $ rsync -avR $(find . -iname 'specials.xml') /path/to/adminxml/