【发布时间】:2014-11-06 21:41:04
【问题描述】:
我正在编写一个 bash 脚本,它需要获取 describe-instances 不返回 platform=>windows 的所有实例的私有 ip,并将它们存储在数组 $ips 中
这个脚本到目前为止工作正常(只是获取私有 ips)
ips=$(aws ec2 describe-instances --region $r --filters "Name=tag:Name,Values=*$c*" | jq '.Reservations[].Instances[].NetworkInterfaces[].PrivateIpAddress')
但我不知道如何排除 windows 服务器(或者相反,只包括非 windows 服务器)
这是我尝试过的
--filters "Name=tag:Name,Values=*$c*" "Name=platform,Values="
--filters "Name=tag:Name,Values=*$c*" "Name=platform,Values=null"
--filters "Name=tag:Name,Values=*$c*" "Name=platform,Values=NULL"
我也试过在管道的 jq 端做,但我的尝试很荒谬,我不会在这里发布它们。我确实发现你不能在那边做两个以上的过滤器(除非我也搞砸了)
有什么想法吗?
【问题讨论】:
-
json 长什么样子?
标签: bash amazon-web-services amazon-ec2 aws-cli jq