SuperUser 上已经有不少关于此问题的主题。然而,我花了 3 个小时尝试了所有主题,但还是无法解决这个问题。
我正在尝试将文件从我的笔记本电脑复制到远程 Linux 服务器。
我的笔记本电脑使用 Windows 8.1,远程服务器是 Debian。我通过 PUTTY 连接到 Linux 服务器。
如果我使用的是 Linux 机器,那么一切都会变得非常简单。但是,由于我的笔记本电脑是 Windows 的……那么……
这是我尝试过的命令:
pscp C:\Users\Michael Storm\Desktop\Folder\public_key.ppk [email protected]:/home/mstorm
- mstorm --- 我在 Linux 服务器上的用户名(也是我的主目录)
- public_key.ppk --- 我要复制到 Linux 服务器的文件
C:\Users\Michael Storm\Desktop\Folder\public_key.ppk
--- 文件路径(在我的笔记本电脑上)
public_key.ppk
(需要说明的是:和之间有一个空格mstorm
。本论坛将我的命令的后半部分延续到了下一行)
此命令给了我错误:
未知命令 PSCPP
因此,我将“PSCP”更改为“SCP”,但出现了错误:
ssh:无法解析主机名 C:名称或服务未知,权限被拒绝(公钥)。失去连接
答案1
让自己轻松一点,使用 WinSCP,WinSCP 是一个开源免费的 SFTP 客户端,FTP 客户端其主要功能是在本地和远程计算机之间传输文件。并与 putty 很好地集成
如果你真的想使用 PSCP,那么要使用 pscp,你需要确保从 pscp.exe 所在的 putty 文件夹设置路径或命令,即
set PATH=C:\path\to\putty\directory;%PATH%
我设置的路径是“set PATH=C:\Program Files\PuTTY;%pscp.exe%”
答案2
使用温SCP!!
什么是 SFTP?
在计算中,SSH 文件传输协议(也称为安全文件传输协议或 SFTP)是一种网络协议,可通过任何可靠的数据流提供文件访问、文件传输和文件管理。
来源维基百科
什么是 WinSCP?
WinSCP 是一款适用于 Windows 的开源免费 SFTP 客户端、FTP 客户端、WebDAV 客户端和 SCP 客户端。其主要功能是在本地和远程计算机之间传输文件。除此之外,WinSCP 还提供脚本和基本文件管理器功能。
来源WinSCP 网站。
怎么运行的?。
只需执行以下步骤。
- 安装 WinSCP 后,只需按“开始”图标并搜索已安装的程序。
- 它将打开以下屏幕,只需按“新建”按钮。
- 之后只需选择协议(本例中默认为 SFTP)并在字段中填写以下信息。
- 在里面红色盒子输入 IP 地址或 DNS 名称。
- 在里面橙子框中输入您的 Linux 主机用户。
- 在里面绿色的输入密码。
- 然后按连接
- 之后你会看到“指挥官”窗口,然后您就可以拖放在您的 Windows 和 Linux 主机之间。
附言
抱歉,我当前的配置是西班牙语。
答案3
设置 PATH 然后尝试,否则先找到文件执行程序在 cmd 上。您必须在同一目录中运行上述命令。
例如 - 如果你的桌面上有 pscp.exe,则cd C:\Users\<your_username>\Desktop
先运行,然后运行命令 -
pscp C:\Users\Michael Storm\Desktop\Folder\public_key.ppk [email protected]:/home/mstorm
您也可以在这里输入密码,而不必稍后再输入 -
pscp -pw <password> C:\Users\Michael Storm\Desktop\Folder\public_key.ppk [email protected]:/home/mstorm
答案4
使用 Windows 中的命令提示符可以轻松解决此问题。
问题在于‘\’在命令中。只需替换‘\’经过‘/’在命令提示符中,命令应该可以工作。
就您而言,命令变为:
pscp C:/Users/Michael Storm/Desktop/Folder/public_key.ppk [email protected]:/home/mstorm/Desktop