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 대신 import-csv로 파이프하려고 하면 각 도메인 개체의 모든 속성을 얻게 됩니다.
다음과 같은 작업을 수행하면:
| format-table givenname,sn,company,telephonenumber,mail `
| export-csv -Delimiter `t -NoTypeInformation -Path c:\scripts\adexport.csv
일부 식별자를 제외하고는 데이터가 없는 올바른 수의 행을 얻습니다. (개체가 텍스트 한 줄인 내보내기-csv로 전달되지 않기 때문에 의미가 있습니다.)
특정 필드를 파일로 내보내려면 어떻게 해야 합니까?
Quest의 ActiveDirectory powershell CMDLET(http://www.quest.com/powershell/activeroles-server.aspx) AD에서 데이터를 가져옵니다.
답변1
Select-Object
. 대신 cmdlet을 사용하려고 합니다 Format-Table
. 이것은 당신에게 도움이 될 것입니다:
| select-object givenname,sn,company,telephonenumber,mail `
| export-csv -Delimiter `t -NoTypeInformation -Path c:\scripts\adexport.csv