2012-04-19 215 views
25

我正在windows計算機上運行putty客戶端以成功連接到Linux機器。現在我想能夠將Linux機器/ home/ubuntu/myfile中的文件複製到本地計算機上的C:/ Users/Anshul/Desktop。在Windows機器上的用戶是anshul。我給膩子下面的命令,但它不工作scp從linux到windows

scp /home/ubuntu/myfile ip_address_of_windows_machine:C:/Users/Anshul/Desktop 

我認爲Windows機器的路徑是錯誤的。請大家幫忙,因爲我在大量論壇上抨擊了我的觀點,但似乎沒有給出正確的Windows服務器路徑。不建議替代選項,如Winscp

+3

那麼你在Windows上運行ssh * service *?正確答案取決於你對這個問題的回答。 – 2012-04-19 19:58:34

+2

短語「不工作」是你尋求幫助時可以說的絕對最不有用的東西。什麼不起作用?你實際得到了什麼結果?有沒有錯誤信息?如果是這樣,請將其添加到您的帖子中。 – 2012-09-24 00:29:22

+0

試試'ssh -v ip_address_of_windows_machine dir'如果你不能ssh到這個盒子,那麼你也不能scp到它。 '-v'選項會給出一些關於它如何連接的反饋,並幫助確定它是否是ip地址,windows box上的sshd服務器等等。 – 2015-04-28 09:41:01

回答

5

Windows本身不支持SSH/SCP/SFTP。您是否在該Windows服務器上運行SSH服務器應用程序?如果是這樣,其中一個配置選項可能是根的位置,並且您將指定相對於該根的路徑。在任何情況下,請檢查您在Windows中運行的SSH服務器應用程序的文檔。

或者,使用smbclient將文件推送到Windows共享。

+11

»Windows本身不支持SSH/SCP/SFTP。«Linux或任何其他操作系統都不支持。它總是需要一個服務。 – Joey 2012-04-19 20:40:12

+0

@Joey - 我看到一個Linux發行版打算連接到互聯網但沒有預先安裝SSH/SCP/SFTP的次數...從來沒有?如果你不認爲Linux或macOS本身支持這些東西,那麼你要麼是無知,要麼就是「本地」這個詞的意思。 – ArtOfWarfare 2017-07-18 18:02:07

+0

@ArtOfWarfare我很確定Ubuntu沒有默認安裝SSH服務器。 SSH客戶端是,但不是服務器。 – 2017-09-13 12:35:49

-8

如果你想從Unix粘貼文件複製到Windows和Windows與Unix只使用FileZilla中與端口22

-3

試試這個: SCP /家庭/ Ubuntu的/ myfile的C:\用戶\ Anshul \桌面

+0

是的,它工作正常。由於我在我的本地Windows PC上運行該程序,並且正在運行SCP,所以它知道我的C:\驅動器。我不是從Linux機器運行這個命令,而是從Windows PC運行它。 – 2013-02-21 18:46:50

+1

這不可能工作 – Private 2017-05-10 12:01:29

18

試試這個,它確實有效。

$ scp [email protected]_host_ip:/home/ubuntu/myfile /cygdrive/c/Users/Anshul/Desktop 

和用於複製所有文件

$ scp -r [email protected]_host_ip:/home/ubuntu/ *. * /cygdrive/c/Users/Anshul/Desktop 
+1

這太棒了。你是救世主! – 2016-04-11 09:13:01

+3

注意路徑中的「/ cygdrive/c」?這將在安裝CYGWIN後生效。仍然是一個偉大的建議! – 2017-01-17 19:23:31

+2

在Windows上,您也可以選擇使用pscp(PuTTY包的一部分,或可以單獨下載) http://www.putty。org/ – 2017-06-08 06:07:48

2

恕我直言,你會使用類似以下

scp -r [email protected]:Path/To/File . 

.File複製到本地默認目錄中程序。 例如使用GitBash,這將文件保存到D:驅動器下的我配置的工作文件夾中。

0

下面是從Linux的文件中使用SCP沒有密碼通過SSH複製到Windows的解決方案

  1. 在Linux機器上安裝sshpass跳過密碼提示

  2. 腳本

sshpass -p'xxxxxxx'scp/home/user1/ [email protected]:/ d /測試/

詳細說明:

sshpass -p '密碼' SCP/SOURCE_PATH/ windowsusername @ windowsMachine_ip:/ destination_drive /子/

感謝, 拉馬拉哈恩jothi

32

下載pscpPutty download page,然後用它從Windows計算機CMD是這樣的:

pscp [email protected]_of_linux_machine:/home/ubuntu/myfile.ext C:\Users\Name\Downloads 

它會問你有關Linux機器的用戶名密碼,然後爲你做拷貝。

+1

真的很棒的小費! – davidgale 2018-01-10 13:53:25

+0

+1 ...但我很驚訝,當我輸入密碼時,pscp沒有在CLI中混淆密碼? – joshmcode 2018-02-14 00:32:44

-1

我知道這是舊的,但我一直在掙扎。我沒有找到改變目錄的方法,但是如果你只想使用C驅動器,scp默認爲C.要從Ubuntu到Windows的scp,我最終必須使用(注意雙反斜線):

SCP /本地/文件/路徑[email protected]:用戶\\ \\ Anshul桌面

希望這可以幫助別人。

+0

它適用於管理員用戶嗎?我們需要在Windows中執行哪些配置? – 2017-08-31 09:52:44

+0

ubuntu @ ip-172-31-22-20:〜$ scp try.sh管理員@ xxxxxxx:用戶\\管理員\\桌面 ssh:連接到主機「xxxxxx」端口22:連接被拒絕 丟失連接 – 2017-08-31 09:55:51

0

對於所有,誰曾與「混帳擊」安裝GIT完全地:你可以這樣寫:

scp [email protected]_addres:/location/to/folders/file.tar . 

(空間和DOT在最後複製到當前位置)。只需添加證書(y),寫入密碼即可。