尝试从本地 Mac 到 Amazon AWS Linux 机器进行 SCP

尝试从本地 Mac 到 Amazon AWS Linux 机器进行 SCP

我正在尝试将文件从本地 Mac 复制到在 Amazon EC2/AWS Cloud 上运行的 Linux 实例。

我能够通过终端连接到服务器,但无法将我的文件上传到服务器。

这是我尝试过的:(是的,我替换了[电子邮件保护]实际的服务器信息)

scp /用户/我/桌面/文件.txt[电子邮件保护]:文件.txt

结果:Sink:scp:/Users/me/Desktop/file.txt:没有此文件或目录

scp ~/用户/me/桌面/file.txt[电子邮件保护]:文件.txt

结果:scp:/home/myuser/Users/me/Desktop/file.txt:没有此文件或目录

因此,当我使用 ~/Users/ ... 时,它似乎认为我正在尝试从服务器复制文件?但是当我仅使用 /Users/ ... 时,它仍然说找不到该文件。

任何帮助将不胜感激。

更多信息 ...

以下是我进行的一些额外尝试,均得到相同的结果:

scp 本地主机:/Users/me/Desktop/file.txt[电子邮件保护]:/home/myuser/file.txt

scp /用户/我/桌面/文件.txt[电子邮件保护]:/home/myuser/file.txt

我还需要做些什么来告诉它从我的台式机上获取文件吗?

弄清楚了 ...

好的,我尝试在已连接到服务器时执行此操作。现在对我来说这很有意义,但我正在连接到服务器,然后尝试移动文件。

感谢您的所有帮助并对所造成的混乱表示抱歉!

答案1

通常您必须指定远程计算机上的路径。

所以...

scp /path/to/textfile.txt [email protected]:/path/to/where/you/want/it/

答案2

看起来远程服务器上的默认目录是 /Users/me/Desktop,您应该在远程服务器上创建该目录,如下所示:

mkdir /Users/me/Desktop

或者将 file.txt 放到现有路径。

ssh /path/to/file.txt [email protected]:/path/to/target/file.ext

答案3

我认为你给命令提供的路径有缺陷......

大多数绝对路径以斜线开头"/",表示根目录。它也适用于远程系统。看看这个:

scp /path/to/read/file.txt [email protected]:/file.txt

或者

scp /path/to/read/file.txt [email protected]:/path/to/write/file.txt

另外,在您的条件下,如果出现错误,您必须检查路径。您可以在文件夹中键入下面的命令来检查路径file.txt

pwd

... 无论如何,如果你认为你的文件在正确的位置,你可以将目录更改为它所在的位置并检查pwd结果

如果您可以通过以下命令更改路径:

cd /Users/me/Desktop/

并且您可以列出要发送的文件:

ls -la | grep file.txt
-rw-r--r--  1 me me 14320 2011-11-15 09:50 file.txt

可能存在用户权限问题。检查您是否可以通过以下方式显示文件内部:cat file.txt 如果您没有该文件的读取权限,则无法将文件发送到任何地方。首先,您必须授予该文件的一些权限。

相关内容