特定のAD属性がnullではないADユーザーを検索する


12

私は、値を持つすべてのADユーザー一覧表示するスクリプト/ PowerShellコマンドを探していない、彼らは値が設定されている必要がありますので、teletexterminalidentifier属性にNULLを。

デフォルトでは、この属性は設定されていませんが、この属性を(16進文字列を含むように)変更するアプリがあるため、この属性が何かに​​設定されているすべてのユーザーのリストを探しています。

ありがとう!


2
まだ何か試してみましたか?
アレックスマッケンジー

1
ええ、でも主にヘルプファイルを読むことで、ようやく理解できたと思います:) Get-ADUser -Filter 'teletexterminalidentifier -ge 0' | Export-Csv c:\ list.csv動作しているようです。どうすれば同じことができますが、teletexterminalidentifier属性の値を同時にエクスポートできますか?
ヨハン

回答:


10

以下を使用してユーザーを取得できるはずです。

Get-ADUser -Filter 'teletexterminalidentifier -like "*"'

その後、コマンドをパイピングすることにより、必要なものをフィルタリングできます。

Get-ADUser -Filter 'teletexterminalidentifier -like "*"' | Select-Object name,teletexterminalidentifier | Export-Csv file.csv

ここでSelect-Objectは、名前で情報を取得するフィールドを選択できます。


残念ながら、Get-ADUserを取得します。クエリの解析エラー: '' teletexterminalidentifier '-like' * ''エラーメッセージ: 'syntax error' at position: '1'。
ヨハン

モジュールをインポートしましたか?
Colyn1337 14年

はい。コマンドをGet-ADUser -Filter 'teletexterminalidentifier -like "*"'に変更すると| export-csv c:\ list6.csv動作します。構文を少しだけ修正しました。
ヨハン

4

探しているのはWhere-Objectコマンドレットだと思います。役立つ擬似コードを次に示します。

Get-ADUser -Filter * | Where-Object {$_.teletexterminalidentifier -ne $null} | Export-Csv c:\list.csv

そのコマンドは、「フィルター」PS C:\ Users \ admin \ Desktop> Get-ADUser | Where-Object {$ _。teletexterminalidentifier -ne $ null} | :(!?。ヘルプタイプ)フィルター:輸出-CSV C:コマンドパイプラインの位置次のパラメータの1つのサプライ値で\ list4.csvコマンドレットのGet-ADUser
ヨハン

1
@Johanフィルターparamを例に追加しました。
Colyn1337 14年

1

このプロパティに基づいてユーザーをフィルターする場合は-propertiesGet-ADuserコマンドレットにスイッチを追加する必要があります。実際、このスイッチなしでは、ユーザーオブジェクトの基本的なプロパティ(メンバー)のみを読み込みます。

したがって、ここにあなたが望むものを達成するための完全なコマンドがあります:

Get-ADUser -filter * -Properties * | ? {$_.teletexterminalidentifier -ne $null} | Select-Object CN,SamAccountName,Teletexterminalidentifier

このような結果が生成されます。 ここに画像の説明を入力してください

その後、結果を目的の形式にエクスポートできます。

お役に立てれば !

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.