You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用条件过滤az storage blob list结果?筛选180天前修改的Blob

筛选最后修改时间180天或更早的Blob

要实现仅返回最后修改时间为180天或更早的Blob,你需要修改az storage blob list命令的--query参数,添加时间过滤条件,同时提前计算出180天前的时间戳作为筛选阈值。

修改后的代码示例

echo "==== Blobs in Container  ===="
# 计算180天前的ISO 8601格式时间(适配Linux环境)
cutoff_date=$(date -d "-180 days" --iso-8601=seconds)
# 调用az命令并添加时间过滤条件
blobsBeforeDirectoryFilter=$(az storage blob list --container-name azureml \
  --account-name  *** \
  --account-key *** \
  --prefix ExperimentRun/ \
  --query "[?lastModified <= '$cutoff_date'].{name:name}" --output tsv)

关键说明

  • 时间计算:用date命令生成180天前的ISO 8601格式时间(和Azure Blob返回的lastModified格式完全匹配),保证时间比较的准确性。
  • JMESPath过滤:在--query参数中通过[?lastModified <= '$cutoff_date']筛选出符合时间条件的Blob,再提取名称字段。

如果是在macOS环境下,调整时间计算命令即可:

# macOS下计算180天前的ISO时间
cutoff_date=$(date -v -180d +"%Y-%m-%dT%H:%M:%SZ")

内容的提问来源于stack exchange,提问作者LukeDornburgh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 00:53:15