嘗試從 txt 檔案中通過 DisplayName 查找用戶并嘗試將其匯出為 CSV。
預期目標是擁有一個姓氏、名字的串列 (displaynames.txt),讓它回傳一個匯出的 CSV 檔案,其中包含代碼中“格式表”中的資訊。
這是我試過的代碼
ForEach ($DN in (Get-Content -Path c:\displaynames.txt))
{ Get-ADUser -Filter { displayName -like "*$DN*" } -SearchBase "DC=DOMAIN,DC=NET" | Format-Table Surname,GivenName,SamAccountName,UserPrincipalName | Out-File C:\UserAD.csv
}
檔案回傳空白。想法?非常感謝提前
uj5u.com熱心網友回復:
嘗試一下,正如Jonathan在他的評論中提到的那樣,Format-Table它旨在向控制臺顯示格式化資訊,即使您可以使用它將格式化資訊匯出到檔案,它也絕對不會是CSV.
代碼中的另一個潛在問題是C:\UserAD.csv在回圈的每次迭代中都會被替換,因為Out-File沒有-Append開關。
Get-Content -Path c:\displaynames.txt | ForEach-Object {
if(-not [string]::IsNullOrWhiteSpace($_))
{
Get-ADUser -LDAPFilter "(displayName=*$_*)" -SearchBase "DC=NWIE,DC=NET"
}
} | Select-Object Surname, GivenName, SamAccountName, UserPrincipalName |
Export-Csv path/to/csv.csv -NoTypeInformation
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/362432.html
