我需要将文件从 Windows 复制到 Ubuntu 12.04。我尝试使用以下代码:
pscp C:\abc.php username@server: .
但它显示一个错误:
More than one remote source not supported
如何解决这个问题?
答案1
因为您指定了多个远程源。username@server: .
← 这里的点(应该表示您的工作目录)不属于那里。您无法像这样在另一台机器上引用您的工作目录,并且由于username@server
和之间有一个空格.
,它将被解释为两个参数。
相反,指定一个绝对路径:
pscp C:\abc.php username@server:/home/user/foo
答案2
如果您使用的是 Windows 路径,则您的文件夹/目录中可能会有空格,这也会导致该错误。您可以通过在路径周围使用双引号来解决这个问题。这就是我的问题
pscp -<arguments> username@server:/home/folder/file "C:\your windows path"
答案3
我刚刚遇到了“不支持多个远程源”错误,原来是因为我在目标中给出了文件名。
我在 Windows 7 机器上运行,试图从 Linux 机器中下载文件。我试过:
pscp -l myusername IPADDRESS:/home/myfolder/myfilename.txt C:\Users\myuserfolder\myfilename.txt
不好。
一旦我删除了目标中的文件名,它就可以正常工作。 这有效:
pscp -l myusername IPADDRESS:/home/myfolder/myfilename.txt C:\Users\myuserfolder
答案4
似乎本地目标中的文件名不受影响。它可以存在或为空。
这行代码对我有用(将 SQL 转储从远程复制到本地):
pscp -pw ssh_pass -P 29477 ssh_user@ssh_host:/tmp/cafe.sql d:\temp\cafe.sql