通过 R 获取 MinIO 中给定存储桶中特定文件夹中包含的文件夹列表

问题描述 投票:0回答:1

嗨!

我在以最佳方式使用

MinIO

R
 进行沟通时遇到问题。
任务是列出位于适当存储桶中的给定子文件夹中的可用文件夹。

示例: 名为 test_bucket

 的存储桶包含 
n
 文件夹:

  • folder_1
    ,
  • folder_2
    ,
  • ...
    
    
  • folder_n
    
    
每个文件夹都包含一些子文件夹,例如

folder_1

包含:

  • sub_folder_1.1
    
    
  • sub_folder_1.2
    
    
  • ...
    
    
  • sub_folder_1.n
    
    
其余文件夹也是如此。

如何从文件夹

folder_2

获取文件夹列表(没有任何子文件夹!)?

我设法以一种相当原始的方式做到这一点,即首先使用

minio.s3::get_bucket_df

 函数下载存储桶的全部内容,然后相应地过滤路径并获得答案。

但是这个解决方案还可以,对于不包含太多数据的存储桶,在它非常广泛且有很多子文件夹的情况下,它变得非常次优,因为我们不必要地搜索巨大的数据区域。

有没有办法只扫描指定的文件夹并返回其主要内容,即其中的文件和文件夹的名称(不包含其内容)?

r minio
1个回答
0
投票
假设您的存储桶名称是

test_bucket 并且您想要列出其中的所有目录而不遍历其内容,以下 mc 命令模式可以提供帮助:

mc ls [MINIO_ALIAS]/[BUCKET_NAME]
让我们来详细分析一下:

  • mc:MinIO 客户端,允许您通过命令行界面 (CLI) 与 MinIO 交互。

  • ls:list命令,用于列出对象和目录。

  • [MINIO_ALIAS]:正在运行的 MinIO 实例的别名。

  • [BUCKET_NAME]:您要使用的存储桶的名称。

    mc ls minio/test_bucket

在任何编程语言中,您都可以编写等效的代码来执行此命令。只需确保将

recursive 属性设置为 False,这样它就不会列出子目录。

© www.soinside.com 2019 - 2024. All rights reserved.