Estou tentando exportar uma lista de algumas informações do usuário do Active Directory 2003 usando o Powershell.
Até agora, consigo exibir a lista específica de propriedades usando algo assim:
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 `
No entanto, se eu tentar canalizar a saída para export-csv, em vez de format-table, obtenho todas as propriedades de cada objeto de domínio.
Se eu fizer algo como o seguinte:
| format-table givenname,sn,company,telephonenumber,mail `
| export-csv -Delimiter `t -NoTypeInformation -Path c:\scripts\adexport.csv
Recebo um número correto de linhas sem dados, exceto algum identificador (o que faz sentido - já que o objeto não está sendo passado para export-csv, apenas uma linha de texto).
Como posso exportar os campos específicos para um arquivo?
Estou usando os CMDLETs powershell do ActiveDirectory da Quest (http://www.quest.com/powershell/activeroles-server.aspx) para obter os dados do AD.
Responder1
Você deseja usar o Select-Object
cmdlet no lugar do Format-Table
. Isso deve funcionar para você:
| select-object givenname,sn,company,telephonenumber,mail `
| export-csv -Delimiter `t -NoTypeInformation -Path c:\scripts\adexport.csv