Exportar campos específicos con export-csv de powershell

Exportar campos específicos con export-csv de powershell

Estoy intentando exportar una lista de información de usuario de Active Directory 2003 usando Powershell.

Hasta ahora, puedo mostrar la lista específica de propiedades usando algo como esto:

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 `

Sin embargo, si intento canalizar la salida a export-csv, en lugar de format-table, obtengo todas las propiedades de cada objeto de dominio.

Si hago algo como lo siguiente:

    | format-table givenname,sn,company,telephonenumber,mail `
    | export-csv -Delimiter `t -NoTypeInformation -Path c:\scripts\adexport.csv

Obtengo un número correcto de filas sin datos, excepto algún identificador (lo cual tiene sentido, ya que el objeto no se pasa a export-csv, solo una línea de texto).

¿Cómo puedo exportar los campos específicos a un archivo?

Estoy usando los CMDLET PowerShell ActiveDirectory de Quest (http://www.quest.com/powershell/activeroles-server.aspx) para obtener los datos de AD.

Respuesta1

Desea utilizar el Select-Objectcmdlet en lugar de Format-Table. Esto debería funcionar para ti:

| select-object givenname,sn,company,telephonenumber,mail `
| export-csv -Delimiter `t -NoTypeInformation -Path c:\scripts\adexport.csv

información relacionada