2017-01-22 3 views
0

これまで同様の質問があった場合、私は迷っています。すべての私の検索が空になっています。Powershellは、ADのSQLクエリ結果から一致する行を返します。コンピュータリスト

$servers | ForEach-Object { $Results.Server -match $_} 

しかし:私は限りこれをしようとして持ってどのようにそれは場合に役立ちます私は$servers$Resultsマッチングサーバ名にSQLクエリの結果を反復処理することができ、

#Change OS to OperatingSystem, shortened for screen readability. 
$servers = Get-ADComputer -LDAPFilter "(|(OS=*2003*)(OS=*2000*))" | Select -expand Name 

を使用して作成され

出力には最後に複数の重複した項目が含まれています。

私も、巨大なSQLクエリを生成すると考えていたので、唯一のクエリは例として、実行する必要があります:

$SqlQuery = @' 
SELECT swName AS [Server], swSchedule as [Schedule] 
FROM SW_TABLE 
WHERE (swSchedule = 'Weekly' OR swSchedule = 'SCCM - Weekly' OR swSchedule = 'Monthly') 
AND swRootObjectType = 'Server' 
AND swName = 'Server' 
AND swName = 'Server' 
AND swName = 'Server' 
AND swName = 'Server' 
'@ 
+1

'$サーバー| Where-Object {$ Results.Server- $ _。Name}' –

+0

私の正気が戻ってくるのを感じることができます! Thanks @ MathiasR.Jessen、どのようにサーバー、スケジュールを出力として取得できますか? – user4317867

+0

その場合は、逆にしたいと思います( '$ servers'に基づいて' $ Results.Server'をフィルターにかける) –

答えて

1

フィルター$serversServer nameプロパティが含まれているかどうかに基づいて$Results配列:

$Results |Where-Object { $servers -contains $_.Server } 
+0

これは私の正気を失うところです。 '$ servers'には75項目、' $ Results' 996が含まれていますが、このフィルタを実行すると88個のアイテムになります。 '$ servers'がUNSORTEDのときに発生するエラーです。 – user4317867

+0

@ user4317867 '$ servers'(フルコマンド)の取得方法で質問を更新できますか? –

+0

それは何も意味がありません。LDAPFilterを選択して拡張名 – user4317867

関連する問題