aws-cli描述实例,按date范围查找

使用aws-cli客户端( https://github.com/aws/aws-cli ),是否有一种方法可以使用date范围筛选器来查找实例? 或者使用“早于Xdate”或“过去X天”filter?

看起来,唯一与date相关的filter是指定一个确切的date,或用string通配符指定部分date。 例如,我发现指定一个date如下所示:

aws ec2 describe-instances --filters "Name=launch-time,Values=2015-03\*" 

例如,获取2015年3月发布的所有实例。

我想要的是相当于这个POSIX“查找”命令,“从过去30天查找所有的东西”:

 find . -mtime -30 

你不能这样做,但是要用python做boto库,比如在30天前发布的aws区域“eu-west-1”中列出实例。

 import boto.ec2 import datetime from dateutil import parser conn = boto.ec2.connect_to_region('eu-west-1') reservations = conn.get_all_instances() for r in reservations: for i in r.instances: launchtime = parser.parse(i.launch_time) launchtime_naive = launchtime.replace(tzinfo=None) then = datetime.datetime.utcnow() + datetime.timedelta(days = -30) if launchtime_naive < then: print i.id 

在使用filter“发射时间”find所有实例比Xdate更新? 使用JMESPath查询 :

 aws ec2 describe-instances --query 'Reservations[].Instances[?LaunchTime>=`2015-03-01`][].{id: InstanceId, type: InstanceType, launched: LaunchTime}'