首页 > 解决方案 > 如何在 CLI 中列出所有 EBS 卷

问题描述

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

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

我不知道为什么在列 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  |

请帮我

标签: linuxbashamazon-web-servicesamazon-ec2

解决方案


在修改 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}"

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

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


推荐阅读