如何将 gcloud 存储桶文件夹中的所有文件更改为 public?
How can I change all files as public in folder of gcloud bucket?
我目前正在寻找一种方法来将 gcloud 存储桶文件夹中的所有文件的权限设置为 public。
我需要单独设置权限
已经参考了google个文档(https://cloud.google.com/storage/docs/access-control/making-data-public),但只找到一项一项的修改。
(我不能使用对象应用方式)
是否有任何方法可以将 gcloud 存储桶中文件中的所有文件的权限更改为 public?
要将存储桶文件夹中的所有文件更改为 public,您可以 运行:
gsutil acl -r ch -u AllUsers:R gs://[BUCKET_NAME]/[FOLDER_NAME]/*
请注意,-r
标志还会使 public 原始文件夹中子文件夹内的所有文件(即 gs://[BUCKET_NAME]/ [FOLDER_NAME]/[FOLDER_2]/FILE 会 也 是 public)。不想要那种效果就去掉
您还可以使用 -m
flag 到 运行 操作 i.n 并行,方法是在 gsutil
和 acl
之间添加它(即 gsutil -m acl
)
此方法依赖于wildcards(*)的使用,您也可以将它们用于"filter"文件
- gs://bucket/data/prefix* 将对所有以 "prefix"
开头的文件执行操作
- gs://bucket/data/*suffix 将过滤以该后缀结尾的文件
- gs://bucket/data/* 将使用所有文件
中还有其他操作(我只是列出了基础知识)
我目前正在寻找一种方法来将 gcloud 存储桶文件夹中的所有文件的权限设置为 public。
我需要单独设置权限
已经参考了google个文档(https://cloud.google.com/storage/docs/access-control/making-data-public),但只找到一项一项的修改。 (我不能使用对象应用方式)
是否有任何方法可以将 gcloud 存储桶中文件中的所有文件的权限更改为 public?
要将存储桶文件夹中的所有文件更改为 public,您可以 运行:
gsutil acl -r ch -u AllUsers:R gs://[BUCKET_NAME]/[FOLDER_NAME]/*
请注意,-r
标志还会使 public 原始文件夹中子文件夹内的所有文件(即 gs://[BUCKET_NAME]/ [FOLDER_NAME]/[FOLDER_2]/FILE 会 也 是 public)。不想要那种效果就去掉
您还可以使用 -m
flag 到 运行 操作 i.n 并行,方法是在 gsutil
和 acl
之间添加它(即 gsutil -m acl
)
此方法依赖于wildcards(*)的使用,您也可以将它们用于"filter"文件
- gs://bucket/data/prefix* 将对所有以 "prefix" 开头的文件执行操作
- gs://bucket/data/*suffix 将过滤以该后缀结尾的文件
- gs://bucket/data/* 将使用所有文件