使用SSH将文件从远程复制到本地

7

我正在尝试将一个文件从Ubuntu服务器复制到我的Mac电脑,但是我一直收到“没有这样的文件或目录”的错误提示。

在通过ssh登录后,我使用以下命令:

scp -p 8888 me@xx1.xx1.xx1.xx1:/var/www/html/00000001.jpg /Users/myusername/Documents/

但是收到了错误信息:
/Users/myusername/Documents/: No such file or directory

这个错误是告诉我本地机器上没有这个文件或目录吗?如何修复此问题的任何建议将不胜感激。

3个回答

12
不要先通过ssh登录到您的服务器,只需从本地计算机执行scp命令即可。
编辑:
另外,应该将-p大写(根据我的机器上的manpage),因此:
scp -P 8888 your_username@remotehost.edu:/var/www/html/00000001.jpg /Users/myusername/Documents/

最好的建议是“不要首先通过ssh登录到您的服务器。”解释:如果这样做,rcp命令将需要在命令参数中知道您的本地主机。谢谢! - undefined

1

是的,它在谈论你的本地计算机。我猜你可能刚刚输错了什么。试试这样做:

scp -P 8888 me@xx1.xx1.xx1.xx1:/var/www/html/00000001.jpg ~/Documents/

确保您在Mac OS X终端提示符处输入此命令,而不是实际的远程服务器上。 "xx1.xx1.xx1.xx1" 应该是远程Ubuntu机器(将文件“拉”到您的机器上,而不是尝试“推送”它)。
另外,尽管是 "ssh -p",但是 "scp -P" 是正确的。对于 "scp","-p" 只会保留修改时间,而 "-P" 是端口。

0
也许您有多个ssh连接处于打开状态。 尝试关闭所有其他连接并重新启动scp命令。

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