Azure Blob 存储批量删除具有特定名称的项目

标签 azure azure-storage azure-blob-storage azure-cli

假设我有一个 blob 容器,其中包含以下名称的文件

2cfe4d2c-2703-4b0f-bed0-6b239f238206
1a18c31f-bf28-4f64-a796-79237fabc66a
20a300dd-c032-405f-b67d-9c077623c26c
6f4041dd-92da-484a-966d-d5a168a9a2ec
(Let's say there are around ~15000 files)

我想删除其中大约 1200 个。我有一个文件,其中包含我要删除的所有名称。就我而言,我有 JSON 格式的数据,但它是什么格式并不重要;我知道我要删除的文件。

删除这些项目最有效/最安全的方法是什么?

我可以想到几个办法。例如,使用 az storage blob deletebatchaz storage blob delete 。我确信前者更有效,但我不知道如何做到这一点,因为实际上并没有模式,只是一个我想删除的 guid(名称)的大列表。

我想我必须编写一些代码来迭代要删除的文件列表,然后使用 CLI 或某些 azure 存储库来删除它们。

我更愿意只使用一些内置工具,但我找不到一种无需编写代码即可与 API 交互的方法。

最好的方法是什么?

最佳答案

工具 azcopy 非常适合此目的。使用命令 azcopy remove您可以使用参数 --list-of-files={path} 指定文本文件的路径来过滤特定文件。该文件应该是纯文本并以行分隔。

关于Azure Blob 存储批量删除具有特定名称的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65842525/

相关文章:

Azure 存储目录删除错误。错误代码 : EndpointUnsupportedAccountFeatures

azure - Azure Blob 存储中的文件 ID [AZURE-BLOB]

asp.net - Asp.net Web App何时在Azure中被回收?

python - 如何使用 ContainerRegistryClient 将标签添加到 Azure 容器注册表中的 list ?

sql-server - 如何删除 Azure MSSQL 审核日志

powershell - Azure PowerShell 如何使用基于用户名/密码的身份验证?

azure - 同步两个 azure 虚拟机时要排除哪些文件?

postgresql - Azure DevOps CI 中 Azure 服务集成的自动化集成测试

azure - 如何使用 Azure 逻辑应用程序将使用 Twilio 发送的彩信中的图像提取到 Azure Blob 存储中?

azure - 用于白名单的 Azure 存储 blob IP 范围是多少