我想從Active Directory獲取用戶。用戶列表顯示在文件users.txt中。我在做批量查詢時,我想在CSV中導出所有詳細信息,同時保留標題(列名稱)。另外我想處理文件errors.txt中的錯誤。
這裏是從我的代碼片段:
$Users = Get-Content .\users.txt
try {
$Users | Get-ADUser -Properties * | select * | Export-Csv export.csv
} catch {
$_ | Out-File errors.txt -Append
}
但我不是在文件中得到了屏幕上的錯誤。例如:
Get-ADUser : Cannot find an object with identity: 'admin' under: 'DC=test,DC=dev,DC=net'. At line:2 char:14 + $Users | Get-ADUser -Properties * | select * | Export-Csv export.csv + ~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : ObjectNotFound: (admin:ADUser) [Get-ADUser], ADIdentityNotFoundException + FullyQualifiedErrorId : ActiveDirectoryCmdlet:Microsoft.ActiveDirectory.Management.ADIdentityNotFoundException,Microsoft.ActiveDirectory.Management.Commands.GetADUser
我不想使用一個循環像foreach
因爲我不能追加到CSV文件。此外,我失去了列名。
問題是我如何處理文件中的錯誤,當我爲多個用戶執行$Users | Get-ADUser
?
爲什麼不能追加到CSV? –