17

我正在使用 powershell 来修改一些 AD 扩展属性。

这是我添加扩展属性的代码

Set-ADUser -Identity "anyUser" -Add @{extensionAttribute4="myString"}

它有效,但我怎样才能删除相同的扩展属性?我找不到类似的东西-remove

4

7 回答 7

15

您可以尝试使用-Clear参数

例子:-Clear Attribute1LDAPDisplayName, Attribute2LDAPDisplayName

http://technet.microsoft.com/en-us/library/ee617215.aspx

于 2013-04-04T09:57:22.283 回答
12

我今天使用了以下 - 它有效!

将值添加到 extensionAttribute

 $ThisUser = Get-ADUser -Identity $User -Properties extensionAttribute1
    Set-ADUser –Identity $ThisUser -add @{"extensionattribute1"="MyString"}

从 extensionAttribute 中删除一个值

  $ThisUser = Get-ADUser -Identity $User -Properties extensionAttribute1
  Set-ADUser –Identity $ThisUser -Clear "extensionattribute1" 
于 2014-05-16T21:57:26.327 回答
3

我一直在努力修改我们域中的扩展属性。然后我编写了一个 powershell 脚本并创建了一个带有 GUI 的编辑器来设置和删除帐户中的 extAttributes。

如果你喜欢,你可以看看它http://toolbocks.de/viewtopic.php?f=3&t=4

对不起,文本中的描述是德文的。GUI 本身是英文的。

我在我们的域中定期使用此脚本,它从未删除任何内容或造成任何其他伤害。我不保证此脚本在您的域中按预期工作。但正如我提供的源代码,您可以(并且应该)在运行它之前查看它。

于 2014-02-27T12:17:10.827 回答
1

扩展属性由 Exchange 添加。根据这篇 Technet 文章,这样的东西应该可以工作:

Set-Mailbox -Identity "anyUser" -ExtensionCustomAttribute4 @{Remove="myString"}
于 2013-04-04T09:56:15.833 回答
0

或 -Remove 参数

Set-ADUser -Identity anyUser -Remove @{extensionAttribute4="myString"}
于 2013-04-04T12:53:23.887 回答
0

要清除该值,您始终可以将其重置为 $Null。例如:

Set-Mailbox -Identity "username" -CustomAttribute1 $Null

于 2013-11-21T17:20:35.413 回答
0
Set-ADUser -Identity anyUser -Replace @{extensionAttribute4="myString"}

这也很有用

于 2015-02-12T21:44:18.427 回答