当前位置: 首页 > 知识库问答 >
问题:

删除给定URI的Azure存储blob

鞠自明
2023-03-14

我正在编写一个清理脚本,用于删除Azure映像及其底层存储blob。我可以使用以下命令找到图像的存储blob:

az image list --query "[?name=='$IMAGE_NAME'] | [].storageProfile.osDisk.blobUri"

(这是bash,所以$IMAGE_NAME被替换为实际的图像名称)。上述命令的输出是URI的JSON列表,每个列表如下所示:

https://storage_account.blob.core.windows.net/container_name/blob_name.vhd

查看az存储blob删除的留档,我可以告诉这个blob可以用这样的命令删除:

az storage blob delete --account-name storage_account --container container_name --name blob_name.vhd

所以,显然我可以解析URI,然后生成这个命令。然而,这似乎很奇怪:如果您不能使用Blob,那么为它们提供URI有什么意义?

所以我的问题是:

  1. 是否有直接az cli命令可以使用Blob的URI删除Blob?
  2. 更好的是,有没有办法删除与给定Azure映像关联的Blob?

共有1个答案

梁宪
2023-03-14

没有内置的CLI命令可以直接使用blob url删除。有一种变通方法可以使用az rest调用Delete Blob rest API。

access_token = $(az account get-access-token --resource https://storage.azure.com/ --query accessToken -o tsv)
now = $(env LANG=en_US TZ=GMT date '+%a, %d %b %Y %T %Z')
headers = "Authorization=Bearer "+$access_token+" x-ms-date="+$now+" x-ms-version=2020-08-04"
az rest --method delete --uri $blob_url --headers $headers 
 类似资料:
  • 首先,我将引用另外两个对这个问题有部分答案的问题。 删除VM后从Azure中删除磁盘 如何删除Microsoft Azure存储中的租用blob 使用Azure Explorer,我可以删除blob和容器,但当我尝试删除存储帐户时,我出现了以下错误: 删除存储帐户“bitnamiWestusflwdmy”失败。无法删除存储帐户“bitnamiWestusflwdmy”:“存储帐户bitnamiWe

  • 我在Azure中创建了一个虚拟机,然后将其删除。但是,关联的存储帐户仍然存在。我无法删除存储帐户,因为它包含一个容器,其中包含一个具有无限期租约的Blob。 没有其他东西正在使用此存储帐户。 如何删除此Blob?

  • 如何删除azure blob存储中的文件夹。当我试图删除文件夹时,我看到以下错误: com.azure.storage.blob.models.BloStorageExctive:状态代码409,"在非空目录上不允许进行此操作。请求ID:195b3f66-601e-0071-2edb-094790000000时间:2022-01-15T06:47:55.8443865Z" 在sun.reflect

  • 我正在调查可用于 Azure 存储的 Webhook/事件触发器。不幸的是,文档似乎专注于演示如何让 Azure 门户为我构建函数,这不允许进行本地测试。 特别是,我正在研究捕获已删除 Blob 的时间。 我的使用示例(Azure函数): 当我从存储容器中删除一个blob时,问题出现了:函数没有被触发。 然而,我发现,如果我在控制台中点击<code>CTRL C</code>则该函数被触发。 有人

  • 我删除了一些Azure资源(经典)。出于某种原因,由于锁定问题,该存储帐户上的某些blob没有被删除,因此我使用cli解锁其余blob并删除其容器。我现在有空的存储帐户。但是,当我尝试通过门户删除我的存储帐户时,会出现以下错误: 无法删除存储帐户“PortalvHDSN4K00GZHV88L”。无法删除存储帐户“PortalVHDSN4K00GZHV88L”:“存储帐户PortalVHDSN4K0

  • 我想创建一个Azure函数,当上次修改时间超过30天时,从azure blob存储中删除文件。有人能帮忙或者有文档来做吗?