You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Win10环境使用scp传输Linux远程文件到本地的路径异常问题

问题根因

你操作的核心错误有两点:

  • 你执行命令的环境是PuTTY登录后的远程Unix服务器Shell,不是你的本地Windows 10系统。此时执行scp传输的所有路径默认都是远程服务器的文件系统路径,你写的\desktop实际是远程服务器根目录下的路径,文件全程都在远程服务器上存储,根本没有传到本地,自然在本地找不到。
  • Unix Shell中反斜杠\是转义字符,不是Windows系统的路径分隔符,你写的\desktop\demo会被Unix解析为desktopdemo字符串,完全不符合你预期的Windows路径格式。

你之前看到的传输成功提示,实际是远程服务器把自身~/A1/demo文件复制到了自身根目录下的对应位置,你在远程服务器执行ls /desktop就能找到这个文件,和你的本地电脑没有任何关系。

正确操作方法

不要在PuTTY的远程会话里执行本地传输命令,直接在本地Windows环境执行scp相关命令即可,以下是两种最简便的方案:

方案1:使用PuTTY配套的pscp工具

PuTTY默认自带同工具集的pscp.exe用于文件传输:

  1. 关闭当前PuTTY远程会话,按Win+R输入cmd回车,打开本地命令提示符
  2. 进入PuTTY的安装目录(或者提前把PuTTY安装目录加入系统环境变量),执行以下命令:
pscp hasanjee@cs.utm.utoronto.ca:~/A1/demo C:\Users\你的本地Windows用户名\Desktop\
  1. 按照提示输入远程服务器的账号密码,等待传输完成后,文件就会保存在你的本地Windows桌面上。

方案2:使用Win10自带的OpenSSH组件

Win10 1809及以上版本默认预装OpenSSH客户端,不需要额外安装任何工具:

  1. 同样在本地打开CMD或者PowerShell,直接执行以下命令:
scp hasanjee@cs.utm.utoronto.ca:~/A1/demo $env:USERPROFILE\Desktop\
  1. 验证远程服务器密码后即可完成传输,这条命令会自动定位到你当前登录用户的桌面路径,不需要手动替换用户名。

不推荐在已登录远程的PuTTY会话里通过反向隧道配置传文件,步骤繁琐容易出错,普通用户直接使用上述两种方案即可。

内容的提问来源于stack exchange,提问作者Heskinammo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 19:01:29