簡體   English   中英

從Get-ADUser返回與csv匹配的職位

[英]Return job titles from Get-ADUser that match csv

我想將職位名稱從csv文件導入Powershell,然后使用Get-ADUser返回具有這些標題的所有活動用戶,然后導出到新的csv

有人可以幫忙嗎?

$csvjobtitle = Import-Csv -Header csvTitle -Path c:\Job_titles.csv

Get-ADUser -Filter {enabled -eq "true" -and Title -eq "$csvjobtitle"} -
Properties SamAccountName, GivenName, Surname, EmailAddress, Title | select 
SamAccountName, GivenName, Surname, EmailAddress, Title | Export-CSV "C:\Ad 
Extract.csv"

這是一種可能的解決方案:

$csvjobtitle = (Import-Csv -Header csvTitle -Path c:\Job_titles.csv).'csvTitle'

$csvjobtitle | ForEach-Object {
    Get-ADUser -Filter {enabled -eq "true" -and Title -eq "$_"} -Properties SamAccountName, GivenName, Surname, EmailAddress, Title | Select SamAccountName, GivenName, Surname, EmailAddress, Title
} | Export-CSV "C:\Ad Extract.csv"

您之前的代碼有兩項更改:

  1. 我們僅從CSV中獲取“ csvTitle”值,而不是具有csvTitle屬性的對象。
  2. 我們使用ForEach-Object循環遍歷這些值,該循環為每個標題獲取AD用戶(當前標題通過$_表示)。

因為ForEach-Object支持管道(並且我們的Get-ADUser cmdlet將其結果返回到管道),所以我們可以簡單地將ForEach-Object的結果通過管道ForEach-ObjectExport-CSV

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM