如何使用golang批量删除minio中的对象
我正在尝试按照此处:
objectsCh := make(chan minio.ObjectInfo)
// Send object names that are needed to be removed to objectsCh
go func() {
defer close(objectsCh)
// List all objects from a bucket-name with a matching prefix.
for object := range minioClient.ListObjects(context.Background(), "my-bucketname", "my-prefixname", true, nil) {
if object.Err != nil {
log.Fatalln(object.Err)
}
objectsCh <- object
}
}()
opts := minio.RemoveObjectsOptions{
GovernanceBypass: true,
}
for rErr := range minioClient.RemoveObjects(context.Background(), "my-bucketname", objectsCh, opts) {
fmt.Println("Error detected during deletion: ", rErr)
}
我可以通过bucketname
和prefixname
来ListObjects
。然而,我正在努力寻找一种方法,可以通过例如我想要删除的对象名称片段或任何其他方式来 ListObjects
。所以我的问题是:如何为给定存储桶中的任意 objectNames
正确生成 ListObjects
?或者还有其他方法可以通过名称删除对象吗?谢谢。
I'm trying to bulk remove objects in minio as described here:
objectsCh := make(chan minio.ObjectInfo)
// Send object names that are needed to be removed to objectsCh
go func() {
defer close(objectsCh)
// List all objects from a bucket-name with a matching prefix.
for object := range minioClient.ListObjects(context.Background(), "my-bucketname", "my-prefixname", true, nil) {
if object.Err != nil {
log.Fatalln(object.Err)
}
objectsCh <- object
}
}()
opts := minio.RemoveObjectsOptions{
GovernanceBypass: true,
}
for rErr := range minioClient.RemoveObjects(context.Background(), "my-bucketname", objectsCh, opts) {
fmt.Println("Error detected during deletion: ", rErr)
}
Where I can ListObjects
by bucketname
and prefixname
. However I'm struggling to find an approach where I can ListObjects
by for example a slice of object names which I want to remove or any other way. So my question is: how can I properly generate a ListObjects
for arbitrary objectNames
in a given bucket? Or is there any other way to do remove objects by their names? Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
并用以下方式调用它:
我尝试过并且它有效,以防您仍然需要它
and call it with :
i tried it and it works, in case you still need it