gcloud 计算 scp 错误:所有源必须是本地文件

use*_*890 5 scp copy google-compute-engine google-cloud-platform

我尝试使用以下命令将文件从我的谷歌云实例复制到本地机器:

gcloud compute scp nlp-2:to_test.txt C:\Temp
Run Code Online (Sandbox Code Playgroud)

并返回以下错误消息:

ERROR: (gcloud.compute.scp) All sources must be local files when destination is remote.  Got sources: [nlp-2:to_test.txt], destination: 
C:Temp
Run Code Online (Sandbox Code Playgroud)

究竟有什么问题?我相信同样的命令就像 2 天前一样有效。

更新:我正在从 Win 7(本地机器)连接到 Ubuntu 16.04(谷歌实例)

Gal*_*one 1

我刚刚尝试在装有 Windows Server 2008 R2 的计算机上在 Google Cloud SDK Shell 上运行以下代码来复制该问题:

gcloud compute scp instance-1:/home/username/file C:\Users\username\file2
Run Code Online (Sandbox Code Playgroud)

其中instance-1是Debian 4.9.51-1,我已经能够复制该文件

因此,我认为您在编写命令时拼写错误(也因为您在几天前写道它也对您有用),或者我没有正确理解您的配置。如果是这种情况,您可以提供一些信息来进一步编辑问题吗?

编辑

我还测试了在具有“奇怪”名称的 Debian 机器之间执行 SCP,并且我始终能够将文件从远程位置复制到远程位置:

gcloud compute scp instance-1:/paolo '/C:\\Temp'
Run Code Online (Sandbox Code Playgroud)

gcloud compute scp instance-2:'/C:\\Temp' .
Run Code Online (Sandbox Code Playgroud)

请注意,尽管有奇怪的符号,C:\Temp 是存储在 Linux 实例中的文件