如何在Windows中使用Putty将远程服务器上的文件复制到本地?

98

我如何使用Putty会话将远程服务器上的文件复制到我本地的Windows系统?


1
一个解决方案是使用putty配置端口转发(例如,8080到8080),然后在SSH会话内运行 python -m SimpleHTTPServer 8080。接着,在本地打开浏览器并转到 localhost:8080 - falsePockets
2个回答

168

使用PSCP已经成功。

  1. 从Putty的下载页面下载 PSCP.EXE 文件。
  2. 打开命令提示符并输入 set PATH=<path to the pscp.exe file> 命令。
  3. 在命令提示符中使用 cd 命令定位到 pscp.exe 文件所在位置。
  4. 输入 pscp 命令。
  5. 使用以下命令将远程服务器上的文件复制到本地系统:

    pscp [options] [user@]host:source target
    

    要将服务器example.com的文件/etc/hosts以用户fred的身份复制到文件c:\temp\example-hosts.txt中,您需要键入:

    scp fred@example.com:/etc/hosts c:\temp\example-hosts.txt
    
    pscp fred@example.com:/etc/hosts c:\temp\example-hosts.txt
    

6
如果你需要连接到特定端口,那么请使用以下命令:pscp -P <端口号> userid@:路径/源文件名 c:\目标路径 - Swamy
5
要使用 ssh 密钥进行身份验证,请使用 -i C:\path\id_rsa.ppk链接 - Nicolas
1
在Putty中保存会话并使用该会话是很方便的,这样就不需要在pscp中进行身份验证了。 pscp sessionname:source target,其中sessionname被Putty中保存的会话名称替换。 - Bikash kharel
所以不能在putty窗口内完成这个操作,必须在CMD中使用吗? - Herman Toothrot
3
@HermanToothrot 看起来是这样的。你需要从putty中单独运行它。另外,我认为我应该指出,如果你像这样指定完整路径:pscp pi@192.168.0.123:/folder/myfile.txt "D:\Temporary\\myfile.txt",则需要在Windows路径上使用双引号。或者,你可以始终使用WinSCP,因为它具有GUI界面,更容易使用。 - mickeymicks
2
如果你只是要进入pscp文件夹,那么抹掉你的PATH设置有什么意义呢?为什么还要包括第四步(什么也没做)?这些指示很混乱。 - pbarney

97

Putty工具集中的一个工具是pscp.exe,它可以让你从远程主机复制文件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接