2015-07-22 70 views
0

我試圖擺脫Import-CSVPowerShell的顧客頭含AD查詢

的CSV內容將在這些自定義標題要正確顯示包含標題,每行有一個姓姓列,它還包含一個標題爲標題「電子郵件」在下面的任何單元格中都沒有數據。

$csv = Import-csv C:\temp\tester.csv 

$csv | select Surname,@{Name='Email';Expression={Get-ADUser -Filter 'Surname -like "$_.Surname"' | Select -ExpandProperty UserPrincipalName}} 

當我在硬編碼姓氏時正確執行。任何想法?

回答

1

您將過濾器放在單引號中,這可以防止Powershell將$_.Surname替換爲值。如果一個字符串包含在單引號中,則將其視爲原樣,而不會在將字符串作爲參數或表達式結果傳遞之前嘗試替換符號(包括轉義符號)。與此替換表達式:

Expression={Get-ADUser -Filter "Surname -like `"$_.Surname`"" | Select -ExpandProperty UserPrincipalName}

的反引號用於轉義應傳遞到AD濾波器引號。