从 文件中读取用户信息,并且更新Active Directory中的用户信息

这段代码的主要功能是从 CSV 文件中读取用户信息,并根据特定条件更新 Active Directory (AD) 中的用户属性 emrdivestiturename

导入 Active Directory 模块:

   Import-Module ActiveDirectory

这行代码加载 Active Directory 模块,以便后续使用 AD Cmdlets。

定义 CSV 文件路径:

   $csvPath = "file_path"

这里指定了存储用户信息的 CSV 文件的路径。

从 CSV 文件中读取数据:

   $data = Import-Csv -Path $csvPath

使用 Import-Csv 命令读取 CSV 文件,将其内容存储在 $data 变量中。

遍历 CSV 文件中的每一行数据:

   foreach ($row in $data) { ... }

这部分代码对 CSV 文件中的每一行进行循环处理。

提取用户信息:

   $userName = $row.UserName
   $emrdivestiturename = $row.emrdivestiturename

从当前行中提取 UserNameemrdivestiturename 属性。

检查 UserName 是否为空:

   if ([string]::IsNullOrEmpty($userName)) { ... }

如果 UserName 为空,输出警告信息并跳过此行。

检查用户是否存在:

   if (-not (Get-ADUser -Identity $userName -ErrorAction SilentlyContinue)) { ... }

使用 Get-ADUser 检查指定的用户是否存在。如果不存在,输出相应信息并继续下一个循环。

获取当前 emrdivestiturename 属性值:

   $currentValue = Get-ADUser -Identity $userName -Properties emrdivestiturename | Select-Object -ExpandProperty emrdivestiturename

从 AD 中获取当前用户的 emrdivestiturename 属性值。

输出调试信息:

   Write-Host "Current Value for $userName: $currentValue"
   Write-Host "emrdivestiturename for $userName: $emrdivestiturename"

根据条件执行不同操作

  • 如果 emrdivestiturename 为 “特定信息” 或包含数字
Set-ADUser -Identity $userName -Clear emrdivestiturename 清除该属性。
  • 如果当前值为空
Set-ADUser -Identity $userName -Add @{emrdivestiturename="china"}emrdivestiturename 属性设置为 “china”。
  • 否则输出无需操作的信息
Write-Host "No action required for user: $userName"

这段代码的主要目的是根据从 CSV 文件中读取的用户信息,检查和更新 Active Directory 中用户的 emrdivestiturename 属性,具体操作取决于该属性的当前值和 CSV 文件中的新值。

温馨提示 : 非特殊注明,否则均为©李联华的博客网原创文章,本站文章未经授权禁止任何形式转载;IP地址:3.137.190.6,归属地:俄亥俄州Dublin ,欢迎您的访问!
文章链接:https://www.lilianhua.com/read-user-information-from-the-file-and-update-user.html
Popup Image

通知

本站原则上是免费提供技术支持,但是服务器维护和运营成本高,可以实行自由赞助:赞助

Loading...