如何使用 AWS CLI 列出具有特定"Description"的 AWS ENI?



当我执行:

aws ec2 describe-network-interfaces --region=us-east-1 
--query="NetworkInterfaces[*].[Description, NetworkInterfaceId]" 
--output text 
--filter 'Name=Description,Values=ELB*'

我得到这个错误信息:

An error occurred (InvalidParameterValue) when calling the DescribeNetworkInterfaces operation:
The filter 'Description' is invalid

我正试图列出我的ENI的描述以"ELB"开头。

更新:谢谢jordanm你的建议已经停止了错误消息,但我仍然认为我做错了我的过滤器选项。如果我执行:

aws ec2 describe-network-interfaces --region=us-east-1 
--query="NetworkInterfaces[*].[Description, NetworkInterfaceId]" 
--output text | grep "^ELB"

我得到结果,但如果我尝试用--filter 'Name=Description,Values=ELB*'而不是| grep "^ELB"过滤,我没有得到任何结果。

下面应该可以找到描述以'EBS'开头的ENI

aws ec2 describe-network-interfaces --region=us-east-1 
--query="NetworkInterfaces[?starts_with(Description, 'EBS')].[Description, NetworkInterfaceId]" 
--output text 

您可以将字面量'EBS'更改为您想要在描述中检查的任何值。如果您想检查Description中包含'EBS'而不只是以它开头,您可以使用以下命令

aws ec2 describe-network-interfaces --region=us-east-1 
--query="NetworkInterfaces[?contains(Description, 'EBS')].[Description, NetworkInterfaceId]" 
--output text