我读过使用JSch将文件从一个远程服务器发送到使用JSch的另一个服务器,代码看起来非常有前途。但它的一个缺点是它使用本地机器作为传输文件的缓冲区。(所以文件流像远程A -本地-远程B)
我想发送任何协议(SSH可能)到远程A和远程A发送文件到远程B直接(使用SFTP)。(可取:远程A -远程B)
它不需要特别使用JSch,但它是目前为止我发现的唯一可行的。
可以手动完成,但所有作业必须自动完成。
任何单一关键字或伪代码将非常感谢!
没有通用的API(可能除了FTP FXP)用于在两台远程机器之间直接传输文件。
你所能做的就是在一台服务器上执行任何命令,在另一台服务器上传输文件。你没告诉我们任何关于服务器的事。但是大多数Linux/Windows服务器都有一些sftp
/scp
客户端可用。
并且OpenSSHscp
内置了两台远程机器之间的传输。因此您可以在本地机器上执行它。请参阅如何使用scp从第三台本地机器在两个远程服务器之间传输文件?但是这并没有太大的帮助,因为它基本上是ssh到一个服务器,并在那里执行scp
以将文件传输到/从订单服务器传输。所以它做了我上面建议你用JSch做的事情。