首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用aws获取最新的Windows2012R2基础AMI id?

使用aws获取最新的Windows2012R2基础AMI id?
EN

Stack Overflow用户
提问于 2017-03-28 12:45:21
回答 1查看 1K关注 0票数 4

有没有办法使用aws获得最新的Windows2012R2基础AMI id?

类似于Powershell中的Get-EC2ImageByName -Names WINDOWS_2012R2_BASE。我想在Linux中使用它。

我尝试过用aws ec2 describe-images --owners amazon --filters "Name=name,Values=Windows_Server-2012-R2_RTM-English-64Bit-Base-*"获取AMI id,但感觉就像一个黑客。在Powershell中有更好的方法来做到这一点吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-28 13:32:46

您描述的"hack“是在AWS中检索这些信息的正确方法。事实上,这就是PowerShell工具的Get-EC2ImageByName在幕后所做的事情;它将原始的AMI名称(由ShowFilter参数公开)映射到由AllAvailable参数公开的预定义名称模式。

您可以通过列出ShowFilter参数来看到这一点;第一个结果与您列出的名称值匹配:

代码语言:javascript
复制
C:/ > get-ec2imagebyname -ShowFilters

Windows_Server-2012-R2_RTM-English-64Bit-Base*
Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP1_Express*
Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP1_Standard*
Windows_Server-2012-R2_RTM-English-64Bit-SQL_2014_SP1_Web*
Windows_Server-2012-RTM-English-64Bit-Base*
...

若要仅从AWS获取最新的Windows2012 R2 AMI ID,请按CreationDate对查询进行排序,并仅限于最后一个结果。

示例:

代码语言:javascript
复制
aws ec2 describe-images \
    --owners 'amazon' \
    --filters 'Name=name,Values=Windows_Server-2012-R2_RTM-English-64Bit-Base*' \
    --query 'sort_by(Images, &CreationDate)[-1].[ImageId]' \
    --output 'text'

输出:

代码语言:javascript
复制
ami-11e84107

进一步阅读

  • AWS CLI文档.描述.图像
  • AWS PowerShell文档- Get-EC2ImageByName
  • AWS文档-控制来自AWS命令行接口的命令输出
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43069988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档