webdevqa.jp.net

Get-ADComputerの出力を効率的にソートする

ここにPowerShellの初心者。ターミナルでコマンドを実行して、指定したドメインのすべてのドメインメンバーを、名前で並べ替えた選択プロパティとともに一覧表示したいと思います。私は400台弱のPCを持つドメインを持っています。私はオンラインガイドからいくつかのものをつなぎ合わせました。私が書いたコマンドは次のとおりです。

$props = @('Name', 'OperatingSystem', 'OperatingSystemVersion', 'IPv4Address'); Get-ADComputer -Filter * -Property $props -SearchBase "DC=domainname,DC=com" -Server "domainname.com" -Credential "domainname.com\domainuser" | Sort-Object -Property Name | Format-Table $props -Wrap –Auto

名前で並べ替えると便利です。絶対に必要というわけではありませんが、いいですね。上記のクエリは期待どおりの結果を取得しますが、かなり長い時間がかかります。ソートステップでは、結果を出力するのに約20秒かかります。ソートなしでは約1秒かかります。

出力を並べ替えるより効率的な方法はありますか?

2
Nikolas_X

私の悪いことに、私は質問をするときにそれを十分に深く調べませんでした。将来の参照のために、解決策は次のような選択ステップを追加することです。

$props = @('Name', 'OperatingSystem', 'OperatingSystemVersion', 'IPv4Address'); Get-ADComputer -Filter * -Property $props -SearchBase "DC=domainname,DC=com" -Server "domainname.com" -Credential "domainname.com\domainuser" | Select $props | Sort-Object -Property Name | Format-Table $props -Wrap –Auto
3
Nikolas_X