【问题标题】:How to get a list of all instances and a specific tag in AWS cli如何在 AWS cli 中获取所有实例和特定标签的列表
【发布时间】:2016-09-08 22:01:36
【问题描述】:

有谁知道如何导出 AWS 账户中的所有实例及其名称和特定标签?我拥有的标签名为 Billing by Role。尝试使用 aws ec2 describe-instances 使其工作。

我试过用这个:

aws ec2 describe-instances --query 'Reservations[].Instances[].[Tags[?Key==`Name`].Value[] | [0], [Tags[?Key==`Billing by Role`].Value[]]' --output text

但我得到一个错误:

ValueError: --query Reservations[].Instances[].[Tags[?Key==Name].Value[] 的值错误 | [0], [Tags[?Key==Billing by Role].Value[]]: Invalid token.: Parse error at column 101 near token "" (EOF) for expression: "Reservations[].Instances[].[Tags[?Key==Name].Value[] | [0], [Tags[?Key==Billing by Role].Value[]]"

谢谢。

【问题讨论】:

  • 您是否尝试列出所有带有“按角色计费”标签且具有特定值的实例?或者只是所有具有该标签的实例,无论其价值如何?
  • 两年前您已经问过几乎完全相同的问题。根据您之前的问题和答案,您应该能够自己解决这个问题。 stackoverflow.com/questions/25858864/…
  • 我正在尝试获取我们所有实例的名称列表,以及相应列上按角色值计费的实例。

标签: amazon-web-services aws-cli


【解决方案1】:

解决了这个问题:

aws ec2 describe-instances --query 'Reservations[].Instances[].{Name: Tags[?Key==`Name`].Value | [0], Role: Tags[?Key==`Billing by Role`].Value | [0]}' --output text

【讨论】:

    【解决方案2】:

    此命令列出区域中具有名为“按角色计费”标签的所有实例。将* 替换为特定值,仅获取具有特定值的实例。

    aws ec2 describe-instances --filter "Name=tag:Billing by Role,Values=*"
    

    【讨论】:

    • 这给了我太多关于实例的信息。我只需要实例的名称和“按角色计费”标签的值。例如:mysqldb1.abc.com 数据库服务器
    • 然后使用 --query 选项控制输出。
    • 我在一年前用过这个:'aws ec2 describe-instances --query 'Reservations[].Instances[].[Tags[?Key==Name].Value[] | [0], Placement.AvailabilityZone,InstanceType,State.Name]' --output text',但是获取标签值的语法是什么? Reservations[].Instances[].[Tags[?Key==Billing by Role].Value[] | [0] 再次?
    猜你喜欢
    • 1970-01-01
    • 2018-06-12
    • 1970-01-01
    • 1970-01-01
    • 2022-01-23
    • 1970-01-01
    • 2018-09-14
    • 1970-01-01
    相关资源
    最近更新 更多