簡體   English   中英

如何使用Powershell為組織單位中的所有用戶替換說明文本

[英]How to Replace Description Text for All Users in an Organizational Unit using Powershell

我已經使用CSV文件向Active Directory添加了大約1700多個用戶。 我不小心嘗試使用\\n分隔它們之間的某些屬性。 但是它並沒有逃脫換行。 而是按原樣鍵入它。

$Users = Import-Csv -Path "C:\UsersList.csv"            

foreach ($User in $Users)            
{
    $Name = $User.Name
    $AccountPassword = $User.AccountPassword
    $City = $User.City
    $Company = $User.Company
    $GivenName = $User.GivenName
    $SamAccountName = $User.SamAccountName      
    $Surname = $User.Surname
    $UserPrincipalName = $User.UPN
    $Displayname = $User.Name   
    $Description = "Desc1: " + $User.Desc1 + "\nDesc2: " + $User.Desc2 + "\nDesc3: " + $User.Desc3 + "\nDesc4: " + $User.Desc4
    $Path = $User.Path


    New-ADUser -Name "$Name" -DisplayName "$Displayname" -SamAccountName "$SamAccountName" -UserPrincipalName "$UserPrincipalName" -GivenName "$GivenName" -Surname "$Surname" -Description "$Description" -AccountPassword (ConvertTo-SecureString $AccountPassword -AsPlainText -Force) -Enabled $true -Path "$Path" -ChangePasswordAtLogon $true
}

現在,我想為所有用戶更改“說明”中的那些“ \\ n”。

我可以讓用戶使用

Get-ADUser -Filter {description -like "\n"}

我需要一個使用.Replace("\\n"," - ") 我不知道如何使用它來達到我的目標。

使用Set-ADUser

Get-ADUser -Filter {description -like "*\n*"} -Properties Description |
  ForEach-Object {
    $newDescription = $_.Description.Replace('\n', ' - ')
    Set-ADUser -Identity $_ -Description $newDescription
  }

請注意,使用-like運算符,您需要在\\n之前和之后添加通配符,否則,您只會獲得描述僅由\\n且沒有其他內容的用戶。 您還需要告訴Get-ADUser包括屬性Description因為它不在默認返回的屬性之列。

您可以執行Foreach-Object循環以查找帶有過濾器的所有描述,並將其通過管道傳遞給Set-Aduser。

         $Description = "-Desc1: " + $User.Desc1 + "-Desc2: " + $User.Desc2 + "-Desc3: " + $User.Desc3 + "-Desc4: " + $User.Desc4

        foreach ($User in (Get-ADUser -Filter {description -like "*\n*"}) )
        {
            $User.SamAccountName | Set-ADUser -Description $Description
        }

從CSV更新用戶

            foreach ($User in $users )
            {
                $User.SamAccountName | Set-ADUser -Description $user.Description
            }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM