私の目標は、3つの別々のADグループのグループメンバーを引き出し、配列内のフィールドの名前をグループ自体の名前に変更しながら$ _。最後に、Out-GridViewを使用して、一部のユーザーが誰がどのグループにいるかを確認できるようにしたいと考えています。foreachループ内の変数で名前を変更する
これは私が現在持っているもので、何らかの理由で動作しますが、変数の最初のエントリを実行するだけです。
$groups = "explore","user", "dist"
$report = foreach ($group in $groups)
{Get-ADGroupMember $group | Select @{Name="$group";Expression=
{$_.name}}}
$report | Out-GridView
なぜこれが最初のエントリで停止していますか?私はここで何が欠けていますか?また、$ report = @()として配列$を作成して$ report + =をループに入れようとしました。どちらもうまくいかなかった。私は何か本当にばかなことを逃しているように感じる。どんな助けもありがとうございます。
もう一度最後に、グリッドビューがポップアップ表示され、それぞれ3つの列にグループ名とメンバーが表示されます。助けてくれてありがとう!
例所望の出力:
explore user dist
user1 user4 user6
user2 user3 user7
user4 user7
私は、グループメンバーを引っ張る名を選択し、名前/発現配列にそれをダンプすることによって一つのグループでこれを行うことができます。
1つのアウトグリッドビューで3つすべてのことがわかりにくいことがわかります。
興味深いことに、同じプロパティを持つオブジェクトの最初のセットが表示されているようです。 '$ report'をコンソールに書くと同様の挙動を示します。同じ' explore'プロパティを持つオブジェクトの束が表示され、次に他のオブジェクトを表す空白行が表示されます。一方、 '$ report | Format-List * 'はすべてのオブジェクトを出力します。 –
私はそれを実行すると、エントリのうちの1つだけの出力が得られ、それはそれらのエントリのどれかが可変であるように見えます。私は非常に混乱しています。 – J235711