スクリプトに正しい書式設定ができない場合があります。 VMwareでpowercliを使用してホスト名とIP情報を取得し、vAppから取得してCSVにエクスポートしようとしています。Export-Csvを使用する
これまでのところ、私が持っている:
$vapp = Get-CIVApp -name name_of_vApp
$vms = $vapp.ExtensionData.Children.vm
$output = foreach ($vm in $vms) {$vm | select-object -Property Name;$vm.Section[2].NetworkConnection | select-object -Property IpAddress,ExternalIpAddress;}
$output | export-csv -Path c:\temp\test.csv -NoTypeInformation
問題、私は$output
に値を代入ラインのようです。何らかの理由で、IP情報を追加しません。たとえそれが関数の外でも、$ vm.nameなしの関数内であっても機能します。サーバが持つIPアドレスの数に等しい空白行で区切られたマシン名が私に与えられます。
私の究極の目標は、サーバーの名前、内部IPアドレス、外部IPアドレスの3つの列テーブルを持つことです。どんな助けもありがとう。
ありがとうございます。
ありがとうございます。私は 'PSCustomObject'について知らなかったが、多くの点で素晴らしいツールのようだ。私は 'ForEach'を' ForEach-Object'のエイリアスとして混同していました。とても混乱するような! – Philosophene
私はテストすることができました。 VMが複数のIPアドレスを持っているときに 'System.Object []'を返すpowershellに関する問題が少しありました。 'IpAddress =(($ _。Section [2] .NetworkConnection.IpAddress)-join '、')' – Philosophene