使用SCP从Windows本地复制文件到远程服务器时出现名称解析错误
解决Windows本地通过SCP传文件到远程服务器的报错问题
错误原因
你在远程服务器的命令提示符里执行了scp命令,这会触发两个核心问题:
- 远程服务器无法识别Windows本地的
C:/或C:\路径,会把c:当成要连接的主机名,从而抛出Could not resolve hostname c: Name or service not known错误。 - 命令里
user@host:后面多了一个空格,scp会把空格后的/home/folder1/folder2误判为独立参数,进一步导致解析失败。
正确操作步骤
- 回到Windows本地,打开终端(比如PowerShell、CMD,或者Git Bash)。
- 执行修正后的scp命令:
- 用PowerShell/CMD时:
注意:scp -r C:\CVPR2022_1st\NAFNet user@host:/home/folder1/folder2user@host:后面不要加空格,路径末尾的斜杠可加可不加。 - 用Git Bash(类Linux环境)时,可将Windows路径转换为类Linux格式:
scp -r /c/CVPR2022_1st/NAFNet user@host:/home/folder1/folder2
- 用PowerShell/CMD时:
- 确保Windows本地已安装scp工具:
- Windows 10/11可在「设置-应用-可选功能」中安装「OpenSSH客户端」。
- 也可以安装Git,Git自带的Git Bash会包含scp命令。
内容的提问来源于stack exchange,提问作者James Li
相关产品推荐
相关产品推荐

