`gsutil cp`命令抛出"OSError:文件名、目录名或卷标语法不正确" [英] `gsutil cp` command throwing "OSError: The filename, directory name, or volume label syntax is incorrect"

查看:25
本文介绍了`gsutil cp`命令抛出"OSError:文件名、目录名或卷标语法不正确"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经按照gsutil install guide遵循了Google Cloud的说明,并且我已经updated GCloud components到了最新版本。我最近刚刚安装并配置了GCloud,以便使用我的凭据和项目。首先,我使用以下命令从我的FiRestore中导出了我需要的单个集合:

gcloud firestore export gs://my-project-id.appspot.com --collection-ids=theCollectionINeed

现在我看到此导出在我的Firebase控制台存储部分中作为一个文件夹。作为项目所有者,我希望将此导出文件放入我的本地系统。为此,我发现我需要使用gsutil才能复制它。阅读download the object from your bucket的说明后,我尝试使用以下命令,但收到以下错误:

$ 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.
我在Windows 10环境中使用cmd运行此命令。 我希望能够将此文件夹从云下载到我的本地驱动器。

更新

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

gsutil mv gs://my-project-id.appspot.com/2020-05-22T02:01:06_86154 gs://my-project-id.appspot.com/2020-06-23_someFolder

但现在再试一次会引发新的错误:

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]

我肯定也需要更改文件名吗?

推荐答案

执行 cp -r gs:/bucket_name/folder .时,Gsutil将尝试在当前位置使用";存储桶名称和名称创建文件夹,Windows doesn't allow文件夹名称要包含一些特殊字符,包括‘:’

您可以使用@DazWilkin建议的gsutil mv gs://m-project-id.appspot.com/2020-05-22T02:01:06_86154 gs://m-project-id.appspot.com/new_folder_name命令重命名存储桶文件夹(对象前缀),然后使用新的文件夹名称重试。

还要检查目录结构中的所有文件名是否没有‘:’字符或任何其他special one

这篇关于`gsutil cp`命令抛出"OSError:文件名、目录名或卷标语法不正确"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆