我正在尝试更改“costCenter”属性。 我注意到架构中的描述最初是“成本中心”。 我认为也许空间是一个问题,所以将其更改为“成本中心”。属性名称是“costCenter”。 我不知道我在这里缺少什么。 任何帮助表示赞赏。
以下是脚本:
导入模块 ActiveDirectory
$Attribcsv=导入-csv“C:\Temp\ADUsers_BulkEdit.csv” ForEach($Attribcsv 中的 $User)
{ 获取 ADUser -Identity $User.samAccountName |设置 ADUser -“成本中心”$($User.costCenter) }
不断吐出的错误如下:
Set-ADUser:找不到接受参数“MM”的位置参数。 行数:5 字符:45
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
I've run the script with different attributes--for testing purposes--successfully:
1. Using the "description" attribute under the General tab in AD
2. Using the "comment" attribute under the Attribute Editor tab in AD
Both of those worked successfully
要添加/删除/替换自定义属性或那些不作为该 cmdlet 的 Parameter 存在的属性,您必须使用
-Add
/ -Replace
/ -Replace
。
因此,假设您要更改属性,并且该属性名称是
Cost-Center
那么您可以使用 -Replace
:
$Attribcsv = Import-Csv 'C:\Temp\ADUsers_BulkEdit.csv'
foreach ($User in $Attribcsv) {
Get-ADUser -Identity $User.samAccountName |
Set-ADUser -Replace @{ 'Cost-Center' = $User.costCenter }
}