こんにちは t2.micro です。
AWS Tools for Windows PowerShell
面白い。けっこうわくわくする。
さて、照会系コマンドのフィルター方法のメモ。
Get-EC2Instance Cmdlet を例に見てみましょう。
たとえば、EC2インスタンスを「特定のタグに入力されているキーワード」でフィルタしたいときは
フィルタ条件をオブジェクトとして作成する必要がある。
こんな感じ。
$filter = New-Object Amazon.EC2.Model.Filter $filter.Name = "tag:Type" #タグ名を指定 $filter.Value = "web" #タグに指定したvalueを入力 Get-EC2Instance -Filter $filter
しかし、似たようなことを何度も書かないといけないのでカッコ悪い。
調べているとワンライナーで書けることが分かった。
$filter = New-Object Amazon.EC2.Model.Filter -Property @{Name = "tag:Type"; Values = @("web")} Get-EC2Instance -Filter $filter
少しだけスッキリした。かっこいい。
さらに複数条件(tagとインスタンス自体のステータス)でフィルタするときは以下のようにする。
$filterA = New-Object Amazon.EC2.Model.Filter -Property @{Name = "tag:Type"; Values = @("web")} $filterB = New-Object Amazon.EC2.Model.Filter -Property @{Name = "instance-state-name"; Values = @("running")} Get-EC2Instance -Filter $filterA,$filterB