【问题标题】:Gsutil cp is not copying filesGsutil cp 没有复制文件
【发布时间】:2021-11-25 07:28:24
【问题描述】:

我正在尝试使用本地计算机上的命令行(anaconda 提示符)从谷歌云存储桶下载文件夹。我正在尝试使用gsutil 命令这样做。

我首先能够使用gcloud auth login 登录项目。

这样做会打开一个浏览器,我使用已获得项目权限的电子邮件访问并登录该浏览器,然后运行gcloud config set project PROJECT_ID。

此时我想我可以运行gsutil cp -r gs://{bucket_name}/{folder_name} .

但是,当我这样做时,CLI 只是暂停了一会儿,然后出现一个新行。不会打印任何错误消息或任何指示,也不会下载任何数据。

我很困惑可能是什么问题。在我之前的尝试中,我收到消息说我没有权限,我以为我已经通过使用gcloud auth login 登录解决了这个问题。但是我在网络上找不到任何其他记录我所处的特定失败模式的实例。我将非常感谢任何帮助!

【问题讨论】:

  • 命令行选项-r表示递归。该选项应应用于前缀(文件夹)名称。您正在将其应用于对象名称。例如,将前缀 images 中的所有对象下载到本地目录:gsutil cp -r gs://{bucket_name}/images .
  • 如果可能,您能否提供您收到的实际错误消息?你使用的是什么版本的gsutil?
  • 谢谢!是的,我实际上正在申请一个文件夹。而且我没有收到任何错误消息。它显然没有运行。
  • 是的,事实证明我的错误是我包括了一个额外的前锋/
  • 谢谢!我有同样的问题。原来 GCP 生成的示例命令在 {folder_name} 之后有一个尾随 /。删除它,它的工作!

标签: google-cloud-platform google-cloud-storage gsutil cp


【解决方案1】:

在运行 GCP 自动生成的建议命令时,我在 Windows (cmd) 上遇到了完全相同的问题:

gsutil -m cp -r "gs://{bucket_name}/{folder_name}/" .

原来问题出在尾随的/(正如@seeker_after_truth 在评论中所建议的那样)

以下命令有效:

gsutil -m cp -r "gs://{bucket_name}/{folder_name}" .

【讨论】:

    【解决方案2】:

    您可以考虑以下示例命令和要点来完成您的任务

    进入您选择的项目并运行命令:

    gsutil -m cp “<source i.e., your bucket path followed by star.star>”  <destination path i.e., your local machine location where you intend to download the folder>
    

    例如:

    gsutil -m cp "gs://my-bucket-name/*.*" D:\folder1\folder2
    

    【讨论】:

    • 希望对您有所帮助。如果它回答了您的问题,请单击复选标记以接受它。这样其他人就知道你得到了(足够的)帮助
    猜你喜欢
    • 2021-06-18
    • 2019-01-01
    • 2021-05-20
    • 2014-06-11
    • 2020-06-11
    • 2014-07-20
    • 2015-01-30
    • 2016-03-06
    • 2017-12-11
    相关资源
    最近更新 更多