我在GCP中下载整个文件夹时遇到问题。我应该如何下载整个存储桶?我在GCP Shell环境中运行此代码:
gsutil -m cp -R gs:// my-uniquename-bucket ./C:\Users\Myname\Desktop\Bucket
并且我得到一条错误消息:“ CommandException:目标URL必须为cp命令的多源形式命名目录,存储桶或存储桶子目录。CommandException:无法传输7个文件/对象。”
有人可以在代码行中指出错误吗?
shareeditflag
您的目标路径无效:
./C:\Users\Myname\Desktop\Bucket
更改为:
/Users/Myname/Desktop/Bucket
C:
是保留的设备名称。您不能在相对路径中指定保留的设备名称。 ./C:
无效。
错误位于错误消息指定的destination URL
之内。
我在GCP Shell环境中运行此代码
请记住您是从Cloud Shell运行命令,而不是在本地终端或Windows命令行中运行。因此,抛出该错误是因为它找不到您指定的路径。如果您检查Cloud Shell的文件系统/结构,则与Unix环境中的文件系统/结构更相似,在该环境中,您可以像这样指定目的地:~/bucketfiles/
。即使简单的gsutil -m cp -R gs://bucket-name.appspot.com ./
也可以使用,因为Cloud Shell可以识别./
目录,它是当前目录。
解决此问题的方法是在Windows命令行上执行命令。您必须事先install Google Cloud SDK。
或者,这也可以在Cloud Shell中完成,尽管需要执行额外的步骤:
gsutil -m cp -R gs://bucket-name ~/
下载存储桶对象,这会将其下载到Cloud Shell中的主目录中~/
或通过运行User Interface将在gcloud alpha cloud-shell scp
(主目录)目录中下载的文件从Cloud Shell传输到本地计算机>