2013-02-27 208 views
1

我需要通過同一網絡在不同機器之間複製/傳輸一些文件。在做了一些閱讀和搜索之後,我認爲試用Java的jsch可能是一個不錯的選擇。痛苦的事實可能是沒有好的文檔可用於jsch。但是我沒有其他的選擇。scp命令將文件從遠程複製到本地主機返回錯誤

爲了實現文件傳輸,我在同一個網絡上選擇了兩臺機器,例如host1(服務器),我安裝了sshd server,已啓動並運行,並且可以使用putty連接到它。第二臺機器,比如說host2(client/local)。我也在這裏安裝了sshd。

現在,我試圖通過在膩子運行以下命令複製host1上(服務器)主機2(客戶端)的桌面文件「的test.txt」連接到主機1後 -

scp [email protected]:test.txt /c

但它返回以下錯誤 -

'scp' is not recognized as an internal or external command, 
operable program or batch file. 

我在做什麼錯?我想先試用膩子然後用java實現。 我第一次使用jsch/ssh,所以任何幫助都會很棒。

回答

0
locate scp 

看看你是否真的擁有它。

+1

甚至找不到工作:(。我試圖mkdir和一個目錄在遠程創建。不知道爲什麼其他命令不工作。 – anujin 2013-02-27 05:00:26

+0

您使用的是Windows嗎? – 2013-02-27 05:03:25

+0

是的... Windows 7上都是 – anujin 2013-02-27 05:14:09

3

如果您需要scp來自Windows的某些東西,那麼爲什麼不簡單地使用pscp來實現呢?

您可以從PuTTy網站下載它。

http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

如果你想在Java程序中使用它,那麼這裏有一個例子:http://www.jcraft.com/jsch/examples/ScpFrom.java.html

+0

我從那裏只下載了膩子......但是,當我連接到使用膩子運行sshd服務器的遠程windows 7機器時,scp命令似乎不起作用mkdir命令 – anujin 2013-02-27 05:17:33

+0

你還下載了'pscp.exe'嗎? – 2013-02-27 07:58:04

+0

哎呀...我的壞...現在我下載了pscp.exe,但只是想知道如何去做? – anujin 2013-02-27 08:30:10

1

你可以安裝Windows的git(http://code.google.com/p/msysgit/)。 Git for windows包括ssh和scp,您可以在使用git bash窗口時訪問它。

然後你也可以使用git來控制源代碼! :-)

相關問題