Azure Blob 存储从特定目录而不是容器获取文件列表
Posted
技术标签:
【中文标题】Azure Blob 存储从特定目录而不是容器获取文件列表【英文标题】:Azure Blob Storage get file list from specific directory not from container 【发布时间】:2021-10-10 12:10:21 【问题描述】:我已经创建了从 Azure blob 容器中获取文件列表的代码。
const sharedKeyCredential = new StorageSharedKeyCredential(account, accountKey);
const containerName = `newcontainer$new Date().getTime()`;
const containerClient = new ContainerClient(
`https://$account.blob.core.windows.net/$containerName`,
sharedKeyCredential
);
console.log("Listing all blobs");
i = 1;
for await (const blob of containerClient.listBlobsFlat())
console.log(`Blob $i++: $blob.name`);
以上代码返回所有文件的列表。 但在我的容器中,有两个文件夹,一个是 IN 文件夹,第二个是 OUT 文件夹。我只需要 IN 文件夹中的文件列表。
是否有任何函数可用于从特定目录获取列表?
【问题讨论】:
【参考方案1】:只需在您的listBlobsFlat
方法中添加prefix
选项,您就可以仅列出IN
文件夹中的blob。比如:
for await (const blob of containerClient.listBlobsFlat(prefix: 'IN/'))
console.log(`Blob $i++: $blob.name`);
您可以在此处了解有关 Blob 列表选项的更多信息:https://docs.microsoft.com/en-us/javascript/api/@azure/storage-blob/containerlistblobsoptions?view=azure-node-latest
【讨论】:
以上是关于Azure Blob 存储从特定目录而不是容器获取文件列表的主要内容,如果未能解决你的问题,请参考以下文章
仅从 Azure 存储 [Azure-Blob][REST] 中的 Blob 列表获取特定元数据
Azure Blob 存储 - 在将新文件上传到 Blob 容器中的特定文件夹时设置警报
Azure SQL - 从 Azure 文件而不是 Blob 批量插入
Azure 存储:Blob:Python:获取指示符是不是存在 Blob