【问题标题】:How to list out all the EBS volumes in CLI如何在 CLI 中列出所有 EBS 卷
【发布时间】:2019-07-19 05:21:48
【问题描述】:

我正在使用 CLI 来获取所有带有某些特定标签的 EBS 卷的列表。

当我使用特定标签时,我的输出中没有输出... 我需要列出 Key:Environment Value: Prod 的所有实例 我需要带有 headings.....

的表格格式的输出

我不知道为什么在 Environment 列中没有输出

到目前为止,我正在使用如下查询:

aws ec2 describe-volumes --filter Name=tag:Environment,Values=prod --query 'Volumes[*].Attachments[].{VolumeID:VolumeId,InstanceID:InstanceId,State:State,Environment:Environment}'

得到如下输出:

DescribeVolumes                              |
+-------------+-----------------------+-----------+-------------------------+
| Environment |      InstanceID       |   State   |        VolumeID         |
+-------------+-----------------------+-----------+-------------------------+
|  None       |  i-xxxxxxxxxxxxxxxxxx |  attached |  vol-xxxxxxxxxx  |

请帮帮我

【问题讨论】:

  • Environment 不是Attachments 对象上的字段,因此它返回None。您需要导航到标签以包含它,使用类似Tags.Values 的东西。但是,这将是一对多的关系,因此在这样的输出表中不太可能看起来不错。您是否考虑过用 Python 之类的语言编写查询?
  • @John Rotenstein 不...我没有在 python 中尝试代码...你能帮我查询一下吗...我应该在哪里添加标签。值

标签: linux bash amazon-web-services amazon-ec2


【解决方案1】:

在修改 AWS CLI 中的参数时,我强烈建议您阅读:

这是提取特定标签的命令版本:

aws ec2 describe-volumes --filter Name=tag:Environment,Values=prod --query "Volumes[*].{VolumeID:Attachments[0].VolumeId,InstanceID:Attachments[0].InstanceId,State:Attachments[0].State,Environment:Tags[?Key=='Environment']|[0].Value}"

它基本上说“包括具有 Environment 键的标签的值”。

您可能需要使用引号字符。这在 Mac 上对我有用,但 Windows 需要不同的引号(例如单引号和双引号)。

【讨论】:

  • Rotensten 可以帮助我如何获取具有环境和服务标签的 Auto Scaling 组中的实例...请
  • 请创建一个包含所有详细信息的新问题。
  • 我创建了新问题..stackoverflow.com/questions/57158470/…帮助我
猜你喜欢
  • 2020-05-31
  • 2017-07-24
  • 1970-01-01
  • 1970-01-01
  • 2023-03-22
  • 1970-01-01
  • 2017-08-12
  • 1970-01-01
  • 2017-07-25
相关资源
最近更新 更多