2

PowerShell を使用して AWS で実行されている EC2 インスタンスの数をカウントするための非常に基本的なスクリプトを探しています。いくつかの方法を見つけましたが、何らかの理由でそれらを試してみると、期待した結果が得られません。

私が持っている最も近いものはこれです:

$instancestate = (get-ec2instance).instances.state.name
$instancestate

戻り値:

stopped
running
stopped
stopped
running

(リストは約 80 のインスタンスに続きます)

実行中のものをカウントする応答が必要です。

4

2 に答える 2

1

他の人についてはわかりませんが、ec2 フィルターを変数に明示的に割り当ててから、Get-EC2Instance. これにより、複数の条件でフィルタリングする必要がある場合に、フィルターを簡単に操作できます。

これは、実行中のインスタンスが 6 つある場合の実際の例です。

# Create the filter 
PS C:\> $filterRunning = New-Object Amazon.EC2.Model.Filter -Property @{Name = "instance-state-name"; Value = "running"}

# Force output of Get-EC2Instance into a collection.
PS C:\> $runningInstances = @(Get-EC2Instance -Filter $filterRunning)

# Count the running instances (more literally, count the collection iterates)
PS C:\> $runningInstances.Count
6
于 2014-12-01T19:59:06.220 に答える