使用powershell的export-csv導出特定字段

使用powershell的export-csv導出特定字段

我正在嘗試使用 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 `

但是,如果我嘗試將輸出透過管道傳輸到 export-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-Objectcmdlet 代替Format-Table.這應該適合你:

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

相關內容