rsync:如何配置它以在服务器上创建目标目录?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (14)

我想rsync从本地计算机到服务器。在一个不存在的目录上,我希望rsync首先在服务器上创建该目录。

我该怎么做?

提问于
用户回答回答于

如果你创建的子目录超过最后一个,则可以ssh ... mkdir -p先单独运行一个,或者--rsync-path按照此处所述使用技巧:

rsync -a --rsync-path="mkdir -p /tmp/x/y/z/ && rsync" $source user@remote:/tmp/x/y/z/

或者使用--relative,在这种情况下,只需指定必须存在的目标的根目录,而不指定将创建的源的目录结构:

rsync -a --relative /new/x/y/z/ user@remote:/pre_existing/dir/

这样,你将以/ pre_existing / dir / new / x / y / z /

用户回答回答于

假设你使用ssh连接rsync,那么在此之前发送ssh命令如何:

ssh user@server mkdir -p existingdir/newdir

如果它已经存在,什么都不会发生。

扫码关注云+社区