我正在尝试使用 rsync 将目录推送到服务器。此命令有什么问题?

我正在尝试使用 rsync 将目录推送到服务器。此命令有什么问题?

我正在尝试使用 rsync 将目录推送到服务器。此命令有什么问题?

你好,

我正在尝试将目录推送到运行 SSH 端口 2222 的计算机。见下文。我收到拒绝连接错误。有什么办法可以实现吗?

rsync --update -P -r -v -e ssh -p $2222 /home/pi/rsynctest[电子邮件保护]:/root/rsync测试/

维萨

平台:Debian 自定义

答案1

引用 ssh-with-port 作为单一参数-e 'ssh -p 2222'-e "ssh -p 2222"。你写的内容指定ssh为选项的参数-e,然后是-p选项到 rsync(与 相同--perms)后跟一个可能虚假的文件名,如果连接(和身份验证)成功,则会出现错误。

不要使用$2222。这样就不会指定数字 2222;在单引号中,它会指定$2222不是数字的实际字符串,在双引号中,它会扩展为 shell 的第二个位置参数,该参数可能是空字符串,后跟222

或者,正如手册页所述,你可以使用 ssh 配置文件(通常).ssh/ssh_config自动指定端口(针对所有、一个或一些主机)。这也适用于您使用 ssh 执行的其他操作,例如,scp sftp当然ssh,这在这里可能是理想的。

相关内容