我必须使用 Google 的 gsutil 从启用了“请求者付费”的项目下载数据。这似乎不可能。
针对这种情况,互联网上建议了两种不同的选择:
gsutil -u <billing project> cp gs://<source project>/<directory>/<file> /<local download path>
CommandException: Invalid command "–u".
gsutil --billing-project=<billing project> cp gs://<source project>/<directory>/<file> /<local download path>
请参阅此处。 与上面的类似,失败并显示
CommandException: Invalid command "--billing-project=<billing project>".
上述语句中的“命令”是
cp
。所以显然这必须是第一位的,并且在此之前没有任何选择被认可。但是将 -u
选项放在最后会出现另一个错误:
$ gsutil --billing-project=<billing project> cp gs://<source project>/<directory>/<file> /<local download path>
BadRequestException: 400 Bucket is a requester pays bucket but no user project provided.
gsutil 似乎没有手册页。帮助似乎暗示存在一个选项
-u
:
$ gsutil --help
Usage: gsutil [-D] [-DD] [-h header]... [-i service_account] [-m] [-o section:flag=value]... [-q] [-u user_project] [command [opts...] args...]
Available commands:
...
cp Copy files and objects
...
但是
gsutil cp
显然不接受这个选项。
从上面的链接中在互联网上推荐的内容来看,我认为这个选项过去存在,但谷歌已选择删除(但我也无法在历史记录中找到它)它或那里周围有不同的名为 gsutil 的工具(可能不是 Google 开发的,但出于相同的目的,或者可能用于不同的操作系统,或者可能用不同的语言编写?
我使用的软件是 Arch Linux kernel 6.7.4 和 Google cloud cli 464.0.0-1
我不知道 CLI 的答案或原因
gsutil
使用 Google Cloud CLI gcloud storage cp 命令,该命令接受
--billing-project
标志。
Google Cloud CLI 全局命令选项 --billing-project
该文档指定本页底部支持
--billing-project
标志: