rsync:通过ssh隧道在服务器上创建目标目录?

rsync:通过ssh隧道在服务器上创建目标目录?,rsync,ssh-tunnel,Rsync,Ssh Tunnel,使用rsync时,可以使用--rsync path技巧在服务器上创建目标目录,如下所示: rsync -av -e "ssh" --rsync-path "mkdir -p /home/user/new/new && rsync" ./file.txt user@10.0.2.60:/home/user/new/new 但是,在使用ssh隧道时,这似乎不起作用。以下命令刚刚挂起: rsync -av -e "ssh -A us

使用rsync时,可以使用--rsync path技巧在服务器上创建目标目录,如下所示:

rsync -av -e "ssh" --rsync-path "mkdir -p /home/user/new/new && rsync" ./file.txt  user@10.0.2.60:/home/user/new/new
但是,在使用ssh隧道时,这似乎不起作用。以下命令刚刚挂起:

rsync -av -e "ssh -A user@10.0.2.61 ssh" --rsync-path "mkdir -p /home/user/new/new && rsync" ./file.txt  user@10.0.2.60:/home/user

如果删除--rsync path参数并在目标设备上手动创建目录,我已经验证了最后一个命令是否有效。但是如何让rsync在使用ssh隧道时创建丢失的目录呢?

设法解决了这个问题。--rsync path中的命令必须用另一级引号括起来:

rsync -av -e "ssh -A user@10.0.2.61 ssh" --rsync-path "'mkdir -p /home/user/new/new && rsync'" ./file.txt  user@10.0.2.60:/home/user