Azure CLI - az 存储 blob 删除批处理模式
Azure CLI - az storage blob delete-batch pattern
我的存储帐户 storageaccount1 中有一个名为 container1 的容器,其中包含以下文件:
blobs/tt-aa-rr/data/0/2016/01/03/02/01/20.txt
blobs/tt-aa-rr/data/0/2016/01/03/02/02/12.txt
blobs/tt-aa-rr/data/0/2016/01/03/02/03/13.txt
blobs/tt-aa-rr/data/0/2016/01/03/03/01/10.txt
我想删除前 3 个,为此我使用以下命令:
az storage blob delete-batch --source container1 --account-key XXX --account-name storageaccount1 --pattern 'blobs/tt-aa-rr/data/0/2016/01/03/02/*' --debug
文件没有被删除,我看到以下日志:
urllib3.connectionpool : Starting new HTTPS connection (1): storageaccount1.blob.core.windows.net:443
urllib3.connectionpool : https://storageaccount1.blob.core.windows.net:443 "GET /container1?restype=container&comp=list HTTP/1.1" 200 None
我的模式有什么问题?
如果我尝试一个文件一个文件地删除,它会起作用。
如评论中所述,您无法将模式应用于子文件夹,只能应用于第一级文件夹,如记录 here 所示。但是,如果需要,您可以轻松编写脚本来列出容器中的 blob,使用前缀过滤它们 az storage blob list
,然后对每个结果 blob 应用删除。
我的存储帐户 storageaccount1 中有一个名为 container1 的容器,其中包含以下文件:
blobs/tt-aa-rr/data/0/2016/01/03/02/01/20.txt
blobs/tt-aa-rr/data/0/2016/01/03/02/02/12.txt
blobs/tt-aa-rr/data/0/2016/01/03/02/03/13.txt
blobs/tt-aa-rr/data/0/2016/01/03/03/01/10.txt
我想删除前 3 个,为此我使用以下命令:
az storage blob delete-batch --source container1 --account-key XXX --account-name storageaccount1 --pattern 'blobs/tt-aa-rr/data/0/2016/01/03/02/*' --debug
文件没有被删除,我看到以下日志:
urllib3.connectionpool : Starting new HTTPS connection (1): storageaccount1.blob.core.windows.net:443
urllib3.connectionpool : https://storageaccount1.blob.core.windows.net:443 "GET /container1?restype=container&comp=list HTTP/1.1" 200 None
我的模式有什么问题?
如果我尝试一个文件一个文件地删除,它会起作用。
如评论中所述,您无法将模式应用于子文件夹,只能应用于第一级文件夹,如记录 here 所示。但是,如果需要,您可以轻松编写脚本来列出容器中的 blob,使用前缀过滤它们 az storage blob list
,然后对每个结果 blob 应用删除。