簡體   English   中英

通過 PowerShell 修改 AD 中的屬性(無任務)

[英]Modify attributes in AD via PowerShell (no Quest)

假設我有用戶和他們的physicalDeliveryOfficeName 屬性,AD 中的Office 設置為New York,其他人說Chicago。

我想設置一個循環遍歷所有用戶的腳本。

If physicalDeliveryOfficeName = Chicago  
Set address properties   
Street: 8888 Chicago Lane  
City: Chicago  
State: IL  
Zip: 60066  
Country: United States

else if physicalDeliveryOfficeName = New York  
Set address properties  
Street: 9999 New York Lane
City: New York
State: NY
Zip: 11111
Country: United States

我似乎無法找到從哪里開始..任何指針?

假設您有 PowerShell v2.0,您可以使用內置的 Active Directory 模塊,特別是Get-ADUser命令后跟Set-ADUser ,例如:

Get-ADUser -Filter {Office -eq "Chicago"} | Set-ADUser -StreetAddress "8888 Chicago Lane City" -City "Chicago" -State "IL" -PostalCode "60066" -Country "US"

可以通過上面的鏈接或通過Get-Help cmdlet 獲得可用屬性的完整列表和一些示例。

如果您不在 PowerShell v2.0 上並且由於某種原因無法升級,您可以使用.NET System.DirectoryServices命名空間和相關類,您應該能夠合理地密切關注 MSDN 示例,例如用於更新這個例子用於搜索 此外,Stackoverflow 有很多例子,盡管這個例子看起來特別有前途。

另外,我錯過了使用 PowerShell 和 System.DirectoryServices 進行搜索的 Microsoft 示例

我調整了上述內容以添加/更改從一個位置移動到另一個位置的員工的地址信息。 在下面的示例中,我當然更改了 John Doe 的地址。 但這是一個單行 powershell 命令行,非常適合尚未學習腳本的人:

get-aduser -filter {SamAccountName -eq "jdoe"} | Set-ADUser -Office "New York" -StreetAddress "123 N Main St" -city "New York" -State "NY" -PostalCode "10044" -Country "US"

暫無
暫無

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

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