通过 ssh 使用 rsync 时如何指定相对于用户主目录的目标路径

sor*_*rin 4 rsync

我正在通过 ssh 使用 rsync 并尝试将文件同步到用户主目录内的某个位置,但没有成功。

rsync 始终希望使用完整路径。

尝试过类似的事情:

  • rsync --rsh=ssh /src/ user@server:/dst- 如果可以的话,显然会在 root 中创建它
  • rsync --rsh=ssh /src/ user@server:~/dst
  • rsync --rsh=ssh /src/ user@server:~dst- 在 root 中创建~dst

phe*_*mer 7

不要尝试在目标上使用绝对文件路径,默认路径是 home。

保留路径并将其放置在 home 中:

rsync /src user@server:
Run Code Online (Sandbox Code Playgroud)

或者使用相对路径将其放置在相对于 home 的某个位置

rsync /src user@server:srccopy
Run Code Online (Sandbox Code Playgroud)

请注意,您不需要--rsh=ssh将其作为默认值。

编辑
如果您希望复制到不是您登录远程计算机的用户的主目录中,则需要使用~引号或反斜杠转义。例如

rsync /src user@server:\~otheruser/
Run Code Online (Sandbox Code Playgroud)