我有一個Java應用程序,它從一個FTP服務器複製或移動一堆千兆文件到另一個。目前它使用ftp get將第一個fpt服務器中的文件複製到本地計算機(它運行的位置),然後使用ftp put將其複製到第二個ftp服務器。我使用apache的網絡庫。複製或移動一個文件從一個FTP服務器到另一個
是否有可能直接從一臺FTP服務器複製到另一臺繞過本地計算機?一個想法是創建一個java遠程登錄會話併發送一些ftp命令。它會起作用嗎?還有其他建議嗎?
我有一個Java應用程序,它從一個FTP服務器複製或移動一堆千兆文件到另一個。目前它使用ftp get將第一個fpt服務器中的文件複製到本地計算機(它運行的位置),然後使用ftp put將其複製到第二個ftp服務器。我使用apache的網絡庫。複製或移動一個文件從一個FTP服務器到另一個
是否有可能直接從一臺FTP服務器複製到另一臺繞過本地計算機?一個想法是創建一個java遠程登錄會話併發送一些ftp命令。它會起作用嗎?還有其他建議嗎?
服務器到服務器的FTP傳輸也稱爲「FXP」。嘗試在谷歌中搜索「fxp java」。
例如:this page可能會有用。
這肯定會奏效。但是,如果您可以使用rcp(1)或scp(1),則不需要中間副本或Telnet會話。只需使用
$ scp [email protected]:file [email protected]:file
如果您使用遠程會話,請考慮使用ssh(1)而不是telnet。
Telnet/SSH應該可以工作。找到一個可用的java遠程登錄客戶端庫,並從那裏拿...
Here's an article關於腳本與Java的Telnet會話。
是的,理論上這可能是由於FTP工作的有趣方式。實際上,它可能需要一個自定義的FTP「客戶端」,與兩臺服務器一起工作。
服務器到服務器的傳輸方案在FTP RFC (959).的第5.2節中進行了描述和說明。簡而言之,一臺服務器會發送一條PASV命令,該命令將IP地址和端口號返回給中間人。中間人通過PORT命令將其發送到另一臺服務器,並且該服務器直接與第一臺服務器建立數據連接。
我知道一個PHP腳本。您可以使用它將文件從服務器移動到服務器,而無需SSH訪問。 速度非常快,可以移動多個文件:http://dlvn.net/web-development/move-files-from-server-to-server/
您沒有權限在目標服務器上運行任何操作? – neesh 2009-06-06 21:02:51