Powershell を使用して Active Directory 2003 からいくつかのユーザー情報のリストをエクスポートしようとしています。
これまでのところ、次のようなものを使用して特定のプロパティのリストを表示できます。
if ( (Get-PSSnapin -Name Quest.ActiveRoles.ADManagement -ErrorAction SilentlyContinue) -eq $null )
{
Add-PsSnapin Quest.ActiveRoles.ADManagement
}
get-qaduser -company "Company","Consultant" `
-enabled -DontUseDefaultIncludedProperties -IncludedProperties 'givenName','sn','telephoneNumber','mail','company' `
| sort-object `
| format-table givenname,sn,company,telephonenumber,mail `
ただし、出力を format-table ではなく export-csv にパイプしようとすると、各ドメイン オブジェクトのすべてのプロパティが取得されます。
次のようなことをすると:
| format-table givenname,sn,company,telephonenumber,mail `
| export-csv -Delimiter `t -NoTypeInformation -Path c:\scripts\adexport.csv
いくつかの識別子を除いて、データがない正しい数の行が取得されます (オブジェクトが export-csv に渡されるのではなく、テキストの行だけが渡されるため、これは理にかなっています)。
特定のフィールドをファイルにエクスポートするにはどうすればよいですか?
私はQuestのActiveDirectory PowerShell CMDLETを使用しています(http://www.quest.com/powershell/activeroles-server.aspx) を使用して AD からデータを取得します。
答え1
Select-Object
の代わりに コマンドレットを使用しますFormat-Table
。これは機能するはずです:
| select-object givenname,sn,company,telephonenumber,mail `
| export-csv -Delimiter `t -NoTypeInformation -Path c:\scripts\adexport.csv