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

如何根据deployment_version标签获取EC2启动模板的VersionNumber?

正确的jq命令及说明

针对你的需求,以下是能正确提取对应标签版本号的jq命令:

基础命令(返回所有匹配的版本号)

aws ec2 describe-launch-template-versions --launch-template-id lt-1234 | jq '.LaunchTemplateVersions[] | select(.LaunchTemplateData.TagSpecifications[].Tags[] | .Key == "deployment_version" and .Value == "release/6.1") | .VersionNumber'

只返回第一个匹配结果(避免多版本重复标签)

aws ec2 describe-launch-template-versions --launch-template-id lt-1234 | jq '.LaunchTemplateVersions | first(select(.LaunchTemplateData.TagSpecifications[].Tags[] | .Key == "deployment_version" and .Value == "release/6.1")) | .VersionNumber'

命令逻辑拆解

  • .LaunchTemplateVersions[]:遍历所有启动模板版本数组
  • select(...):精准筛选符合条件的版本:
    • .LaunchTemplateData.TagSpecifications[]:遍历标签组数组(EC2启动模板的标签会放在TagSpecifications下)
    • .Tags[]:遍历每个标签组内的标签数组
    • .Key == "deployment_version" and .Value == "release/6.1":匹配目标标签的键值对
  • .VersionNumber:提取匹配版本的编号

错误原因解释

你遇到的Cannot index array with string "Tags"错误,是因为Tags是数组类型,不能直接用.Tags.Key的方式访问属性,必须先通过[]遍历数组元素,才能访问每个标签的Key和Value字段。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 11:39:56