在使用该列的信息更新 AD 之前,我可以在 Set-ADUser cmdlt 中使用 if 语句来检查该列是否为空吗?

问题描述 投票:0回答:0

我正在编写一个从 csv 文件更新 Active Directory 的脚本。该文件包含许多列,我已将它们全部与 AD 匹配,没有任何问题,但我有一个问题...csv 文件中的某些列为空白(无数据),如果我从文件中读取任何内容并更新 AD,则它将一无所有地覆盖信息。

所以我需要跳过这些专栏。问题是我不知道哪些列事先没有数据,而且每次导入时都不一样(这个脚本每半小时运行一次,从 HR 系统中提取数据并更新 AD。我假设这意味着我需要条件事先测试每一列以确定它是否具有空值,但我不确定如何。理想情况下,我想将 if 语句放在 set-aduser cmdlet 中,如下所示:

Set-ADUser -Identity $CurrentADUser (If $PreferredName){-GivenName $PreferredName},之后的其他列...

我试过这段代码,但它不起作用,因为 AD 不接受输入。

有没有人对如何检查 CSV 文件中的列是否为空值有任何建议,如果有空值则跳过它?

powershell csv import updating
© www.soinside.com 2019 - 2024. All rights reserved.