我们使用Powershell使用CSV文件中的数据批量更新AD数年。代码很简单:
$Empinfo = Import-CSV AFile.csv
$EmpAD = Get-Aduser someone
$EmpAD.Title = $EmpInfo.Title
$EmpAD.streetAddress = $Empifo.street
$EmpAD.PostalCode = $Empifo.zip
<snip>
Set-ADUser -Instance $EmpAD
最近,由于组织上的怪异,街道和拉链信息已被空白。当我们运行相同的脚本并尝试设置时,将streetAdress设置为空,Set-ADuser会抛出一个&#34;替换&#34;错误。 (请注意,我尝试将streetaddress设置为单个空格,但仍然失败。)
经过多次试验和错误,今天我能够通过测试空白并使用以下内容来使其工作:
if (Empinfo.street -eq $null) {
Set-ADUser $EmpAD -Clear streetaddress,postalCode
} else {
$EmpAD.streetAddress = $Locations[$site].street
$EmpAD.PostalCode = $Locations[$site].zip
}
换句话说,我们必须发出一个特定的清除行动来实现这一目标。 这是我们应该如何期待它的工作?我在-Instance参数文档中看不到任何内容,表明您无法以我们尝试的方式清空属性。