相关疑难解决方法(0)

`gsutil cp` 命令抛出“OSError:文件名、目录名或卷标语法不正确”

我按照 Google Cloud 说明执行了gsutil 安装指南,并且已将GCloud 组件更新到最新版本。我最近刚刚安装并配置了 GCloud 以使用我的凭据和项目。首先,我使用以下命令从Firestore导出我需要的单个集合:

gcloud firestore export gs://my-project-id.appspot.com --collection-ids=theCollectionINeed
Run Code Online (Sandbox Code Playgroud)

现在我看到这个导出在我的 Firebase 控制台存储部分作为一个文件夹。作为项目Owner,我想将此导出到我的本地系统。为此,我认为我需要使用gsutil才能复制它。阅读从您的存储桶下载对象的说明,我尝试使用以下命令,但出现此错误:

$ gsutil cp -r gs://m-project-id.appspot.com/2020-05-22T02:01:06_86154 .
Copying gs://lucky-level-dev-6ac34.appspot.com/2020-05-22T02:01:06_86154/2020-05-22T02:01:06_86154.overall_export_metadata...
OSError: The filename, directory name, or volume label syntax is incorrect.
Run Code Online (Sandbox Code Playgroud)

cmd在 Windows 10 环境中运行此命令。我希望能够将此文件夹从云下载到我的本地驱动器。

更新

之后,我尝试按照建议更改存储桶文件夹(对象前缀):

gsutil mv gs://my-project-id.appspot.com/2020-05-22T02:01:06_86154 gs://my-project-id.appspot.com/2020-06-23_someFolder
Run Code Online (Sandbox Code Playgroud)

但是现在再试一次会给我一个新的错误:

gsutil cp -r gs://my-project-id.appspot.com/2020-05-22_someFolder .
Copying gs://my-project-id.appspot.com/2020-05-22_someFolder/2020-05-22T02:01:06_86154.overall_export_metadata...
OSError: Invalid argument.9.0 B]
Run Code Online (Sandbox Code Playgroud)

当然我也需要更改文件名吗?

firebase gsutil gcloud google-cloud-firestore

5
推荐指数
1
解决办法
1523
查看次数

使用填充了虚拟数据的默认数据库启动 firebase 模拟器

每当我启动模拟器时,我都必须为实时数据库导入数据库,有时还需要手动为 firestore 制作顶级集合。

有没有办法设置模拟器,以便数据库已经准备好?

我不希望其中填充来自实际项目的所有数据,而是填充一些足以进行本地开发的虚拟数据。

再次强调,我并不是要求此设置来运行测试(如此处所述,而是用于日常开发。

firebase firebase-realtime-database google-cloud-functions google-cloud-firestore firebase-cli

2
推荐指数
1
解决办法
1681
查看次数