标签: gsutil

gsutil cp命令复制整个目录路径(在Windows上) - bug?

我遇到一个问题,gsutil似乎没有遵循文档中描述的行为(至少在Windows中).文件说明:


执行递归目录副本时,将构造对象名称,从递归处理开始镜像源目录结构.例如,命令:

gsutil cp -R dir1/dir2 gs://my_bucket
Run Code Online (Sandbox Code Playgroud)

将创建名为like的对象gs://my_bucket/dir2/a/b/c,假设dir1/dir2包含该文件a/b/c.


但是,在实践中我发现它将创建名为的对象:

gs://my_bucket/dir1/dir2/a/b/c
Run Code Online (Sandbox Code Playgroud)

即,它复制命令中声明的整个目录路径gsutil,而不是如文档中所述"从递归处理点开始"(dir2).

我在这里错过/误解了什么吗?

cp google-cloud-storage gsutil

6
推荐指数
1
解决办法
7348
查看次数

无法在python中使用gcs进行身份验证

我按照https://developers.google.com/storage/docs/gspythonlibrary#credentials中的示例进行操作

我通过在开发中选择来创建客户端/秘密对.控制台"创建新的客户端ID","已安装的应用程序","其他".

我的python脚本中有以下代码:

import boto
from gcs_oauth2_boto_plugin.oauth2_helper import SetFallbackClientIdAndSecret
CLIENT_ID = 'my_client_id'
CLIENT_SECRET = 'xxxfoo'
SetFallbackClientIdAndSecret(CLIENT_ID, CLIENT_SECRET)

uri = boto.storage_uri('foobartest2014', 'gs')
header_values = {"x-goog-project-id": proj_id}
uri.create_bucket(headers=header_values)
Run Code Online (Sandbox Code Playgroud)

它失败并出现以下错误:

   File "/usr/local/lib/python2.7/dist-packages/boto/storage_uri.py", line 555, in create_bucket
      conn = self.connect()
    File "/usr/local/lib/python2.7/dist-packages/boto/storage_uri.py", line 140, in connect
      **connection_args)
    File "/usr/local/lib/python2.7/dist-packages/boto/gs/connection.py", line 47, in __init__
      suppress_consec_slashes=suppress_consec_slashes)
    File "/usr/local/lib/python2.7/dist-packages/boto/s3/connection.py", line 190, in __init__
      validate_certs=validate_certs, profile_name=profile_name)
    File "/usr/local/lib/python2.7/dist-packages/boto/connection.py", line 572, in __init__
      host, config, self.provider, self._required_auth_capability())
    File "/usr/local/lib/python2.7/dist-packages/boto/auth.py", line 883, in get_auth_handler
      'Check your credentials' % …
Run Code Online (Sandbox Code Playgroud)

python boto google-cloud-storage gsutil

6
推荐指数
2
解决办法
3325
查看次数

将 gsutil 与谷歌驱动器(不是谷歌云存储)一起使用

gsutil使用boto 配置文件在 Google Cloud Storage 进行身份验证。

\n\n

我在 console.developers.google.com 中生成 ClientID - 允许通过 python 脚本将文件放入 Google Drive:

\n\n
#!/usr/bin/env python\n\nfrom apiclient.discovery import build\nfrom apiclient.http import MediaFileUpload\nimport httplib2\nfrom oauth2client.client import SignedJwtAssertionCredentials\n\ncredentials = SignedJwtAssertionCredentials(\nservice_account_name=\'301714561983-nkd8kalz1op3bdjn75ija1b7ef1sslpr@developer.gserviceaccount.com\',\nprivate_key=\'\'\'-----BEGIN PRIVATE KEY-----\n\xd0\xbf\xd1\x80\xd0\xb8\xd0\xb2\xd0\xb0\xd1\x82\xd0\xbd\xd1\x8b\xd0\xb9 \xd0\xba\xd0\xbb\xd1\x8e\xd1\x87\xd0\xb8\xd0\xba \n-----END PRIVATE KEY-----\'\'\',\n        scope = [\n                \'https://www.googleapis.com/auth/drive\',\n                \'https://www.googleapis.com/auth/drive.file\',\n                \'https://www.googleapis.com/auth/drive.appdata\',\n                \'https://www.googleapis.com/auth/drive.apps.readonly\'\n        ]\n)\n\nhttp = httplib2.Http()\nhttp = credentials.authorize(http)\n\ndrive_folder_id = \'0C3ZU6kySEIuCT0ANM3RRVE1iME0\' #folder id\n\nservice = build(\'drive\', \'v2\', http=http)\n\nmedia_body = MediaFileUpload(\'document.txt\')\nbody = {\n        \'title\': \'document.txt\',\n        \'description\': \'backup\',\n        \'mimeType\': \'text/plain\',\n        \'parents\': [{\'id\': drive_folder_id}]\n}\n\nfile = service.files().insert(\n        body=body,\n        media_body=media_body).execute()\n
Run Code Online (Sandbox Code Playgroud)\n\n

我想使用 …

authentication rsync google-drive-api gsutil

6
推荐指数
1
解决办法
7802
查看次数

gsutil CommandException:没有匹配的 URL:*.txt

我试图了解如何使用 gsutil 将本地文件复制到云存储,以便我可以编写脚本来移动文件。我遵循了以下步骤:

C:\Program Files (x86)\Google\Cloud SDK>gsutil ls
gs://sa-upload-test/
C:\Program Files (x86)\Google\Cloud SDK>cd\spare
C:\Spare>gsutil cp *.txt gs://sa-upload-test
CommandException: No URLs matched: *.txt
Run Code Online (Sandbox Code Playgroud)

我更改了文件夹属性并为每个人设置了权限,重新运行它并仍然得到相同的结果。谁能告诉我我错过了什么?

gsutil

6
推荐指数
1
解决办法
1万
查看次数

gsutil 不适用于 mac 和 python3.5

我正在尝试使用 google storage lib,但是当我调用 gsutil 时出现错误...

使用 pip 安装 gsutil:

pip install gsutil
Run Code Online (Sandbox Code Playgroud)

我当前的Python版本是3.5

当我gsutil从命令行运行时,出现以下错误:

class AbortException(StandardError): NameError: name 'StandardError' is not defined
Run Code Online (Sandbox Code Playgroud)

不知道如何解决这个问题...有什么想法吗?

编辑:看起来使用 python 3.4 工作正常,尽管他们说 3x 不支持它......

python-3.x google-cloud-storage gsutil

6
推荐指数
1
解决办法
4893
查看次数

Google Cloud Storage:输出路径不存在或不可写

我正在尝试从google cloud site遵循这个简单的数据流示例。

我已经成功安装了数据流管道插件和 gcloud SDK(以及 Python 2.7)。我还在谷歌云上设置了一个项目并启用了计费和所有必要的 API - 如上面的说明中所述。

但是,当我转到运行配置并更改管道参数选项卡以选择 BlockingDataflowPipelineRunner 时,在输入创建存储桶并设置我的项目 ID 后,点击运行给我:

Caused by: java.lang.IllegalArgumentException: Output path does not exist or is not writeable: gs://my-cloud-dataflow-bucket
    at com.google.cloud.dataflow.sdk.repackaged.com.google.common.base.Preconditions.checkArgument(Preconditions.java:146)
    at com.google.cloud.dataflow.sdk.util.DataflowPathValidator.verifyPathIsAccessible(DataflowPathValidator.java:79)
    at com.google.cloud.dataflow.sdk.util.DataflowPathValidator.validateOutputFilePrefixSupported(DataflowPathValidator.java:62)
    at com.google.cloud.dataflow.sdk.runners.DataflowPipelineRunner.fromOptions(DataflowPipelineRunner.java:255)
    at com.google.cloud.dataflow.sdk.runners.BlockingDataflowPipelineRunner.fromOptions(BlockingDataflowPipelineRunner.java:82)
    ... 9 more
Run Code Online (Sandbox Code Playgroud)

我已经使用我的终端执行“gcloud auth login”,我在浏览器中看到我已成功登录。

我真的不确定我在这里做错了什么。谁能确认这是否是使用数据流管道和谷歌存储桶的已知问题?

谢谢!

permissions jenkins google-cloud-storage gsutil google-cloud-dataflow

6
推荐指数
2
解决办法
5079
查看次数

“gsutil cp”的结果总是在标准错误中,而不是标准输出中

正如标题一样,“gsutil cp”的结果不会重定向到标准输出,它总是重定向到标准错误。

例如:gsutil cp existed_file.txt . > >(tee -a out.log) 2> >(tee -a error.log >&2)。上述命令中out.log为空,error.log复制成功。

它的行为是错误的,因为如果上面的命令是正确的,它的输出应该在 out.log 中返回,而不是在 error.log 中。

我该如何解决?

google-cloud-storage gsutil google-cloud-platform google-cloud-functions

6
推荐指数
1
解决办法
1643
查看次数

为 Google Storage 存储分区中的所有对象设置元数据

我想将Content-Type元数据设置为image/jpeg所有谷歌的存储桶的对象。

这该怎么做?

google-cloud-storage gsutil

6
推荐指数
1
解决办法
878
查看次数

从 Google Play 下载单独的 ARN 报告

我需要下载 ANR(应用程序无响应)数据的各个实例的报告。这是为了将此类数据上传到内部系统,该系统将帮助我生成 Google Play 上不可用的报告(ANR 率、个人 ANR 对评级的贡献等)并跟踪 ANR,就像它们是崩溃一样。

我一直在做一些在线研究,我唯一能找到的是每日生成的报告(每月汇总),其中包含 ANR 的原始数量,但没有关于单个实例的任何详细信息。 https://support.google.com/googleplay/android-developer/answer/6135870#export

我不一定需要可下载的 CVS 报告,最好通过 gsutil 或任何其他编码工具访问数据。

我知道我正在寻找的数据存在,因为它在 GooglePlay 控制台上的“应用程序> Android Vitals> ANR 和崩溃”下可见,但是我找不到下载它的方法。

有谁知道是否有办法从 GooglePlay 获取我需要的数据?

如果 Google Play 控制台根本不提供它,您对在运行时检测 ANR 的最佳方法有什么建议吗?然后我可以将其数据作为崩溃上传到我的内部分析系统。

android android-anr-dialog gsutil google-play-developer-api google-play-console

6
推荐指数
0
解决办法
354
查看次数

Xcode 更新破坏了 gcloud 和 gsutil

几个小时前,我Xcode更新到最新版本,造成gcloudgsutil命令停止工作。例如,在更新完成前一分钟,该命令gsutil -m rsync运行良好。

在写这个问题时,我注意到我不再git工作了。

由于我不是 Python 人,有人可以向我解释现在到底发生了什么吗?我很想得到一些帮助。

python -V输出是Python 2.7.16

python3 -V输出是Python 3.9.0

pip -V 输出是 pip 20.2.3 from /Users/<MY_USER>/Library/Python/2.7/lib/python/site-packages/pip (python 2.7)

pip3 -V 输出是 pip 20.2.3 from /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/pip (python 3.9)

这就是我得到的gcloud help

Traceback (most recent call last):
  File "/Users/<MY_USER>/gcloud/sdk/lib/gcloud.py", line 104, in <module>
    main()
  File "/Users/<MY_USER>/gcloud/sdk/lib/gcloud.py", line 62, in main
    from googlecloudsdk.core.util import encoding
  File "/Users/<MY_USER>/gcloud/sdk/lib/googlecloudsdk/__init__.py", line 23, in <module>
    from googlecloudsdk.core.util import …
Run Code Online (Sandbox Code Playgroud)

python macos xcode gsutil gcloud

6
推荐指数
1
解决办法
1106
查看次数