PowerShellで入れ子になったプロパティ(値)をFormat-Custom使って表示
Get-AzVM(Azure PowerShell)を利用してVMの情報を取得してみたのですが入れ子になった仮想マシンサイズ表示する方法が分からずに悩んでいました。その時に色々な方にお聞きしてPowerShell実行結果で入れ子になったプロパティ(値)はFormat-Customで表示出来る事を教えて頂きました。
Get-AzVMコマンド(Azure PowerShell)を例に入れ子になった仮想マシンサイズのプロパティ(値)をFormat-Customで表示、Format-TableやFormat-Listを使って実行結果を分かりやすく表示する所までを簡単に纏めてみました。
Get-AzVMコマンドを実行してみる
Get-AzVMコマンドを実行してみます。Get-AzVMコマンドの詳細はこちらを参照ください。
Get-AzVMコマンドを実行してみる | |
|
このように、ほとんどの情報が入れ子になっており、仮想マシンのサイズも分かりませんでした。
結果を見ると仮想マシンサイズの情報はHardwareProfileに入っていそうです。
PowerShellで入れ子のプロパティ(値)を確認するのにはFormat-Customを使う
Get-AzVMコマンドにFormat-Customをつけて実行してみます。Format-Custom利用時は|(パイプ)で接続します。
-Propertyで表示する項目を指定する事が出来ます。仮想マシンのサイズが含まれそうなHardwareProfileを指定してみます。すべての情報を表示する場合は-Property *と指定します。
Format-Customの詳細はこちらを参照ください。
Get-AzVMにFormat-Customをつける | |
|
入れ子になっていて分からなかった仮想マシンサイズがStandard_B1sである事を確認出来ました。
Format-ListやFormat-Tableを使ってGet-AzVMのコマンド実行結果を見やすくしてみた
Get-AzVMコマンド実行結果の中で必要な項目をリスト形式で表示する事で見やすくしてみました。例としてVM名、VMのロケーション、仮想マシンサイズを表示してみます。
HardwareProfileの中にVmSizeという項目があり、そこに仮想マシンサイズの値が格納されている事が分かりました。このような入れ子の中の値は{$_.HardwareProfile.VmSize}と指定する事で取得する事が出来ます。
Format-Listを使ってみる
Format-List(flと省略する事が可能)を利用するとPowerShellの実行結果をリスト形式で表示する事が出来ます。
Format-Listの詳細はこちらを参照ください。コマンドリファレンスはこちら。
Get-AzVMで表示したい項目だけをリスト形式で表示 | |
|
しかしこれだとVMサイズの部分が見にくいです。表記名をVmSizeとして見やすくしてみます。
Get-AzVMの結果をさらに見やすくする | |
|
このような形で見やすい形で表示する事が出来ました。
Format-Tableを使ってみる
Format-Table(ftと省略する事が可能)を利用する事で表形式にすることも可能です。
Format-Tableの詳細はこちらを参照ください。コマンドリファレンスはこちら。
Get-AzVMの結果を表形式にしてみる | |
|
今回の内容を踏まえてAzure VMの稼働ステータスなども纏めて取得はこちらでやっています。