Powershell 将广告用户标题设置为组名

Powershell 将广告用户标题设置为组名,powershell,active-directory,batch-processing,Powershell,Active Directory,Batch Processing,我想将一组组中所有用户的标题设置为所述组的名称。所有组的名称都以“位置-”开头 下面是一个我知道可以为每个组手动执行的示例: get-adgroupmember-identity“职位-应付账款专家”| get-aduser-properties title |%{set-aduser$|-title“应付账款专家”} 正如您所知,我正在手动删除组名的开头“Position-”部分,因此如果有人知道同时或事后执行此操作的方法,我将不胜感激 类似于 Get-ADGroup -Filter 'Nam

我想将一组组中所有用户的标题设置为所述组的名称。所有组的名称都以“位置-”开头

下面是一个我知道可以为每个组手动执行的示例:

get-adgroupmember-identity“职位-应付账款专家”| get-aduser-properties title |%{set-aduser$|-title“应付账款专家”}

正如您所知,我正在手动删除组名的开头“Position-”部分,因此如果有人知道同时或事后执行此操作的方法,我将不胜感激

类似于

Get-ADGroup -Filter 'Name -like "Position - *"' | %{
    $g = $_
    $jobTitle = $g.Name.Substring(0, 11).Trim()

    Get-ADGroupMember -Identity $g | Get-ADUser -Properties Title | %{
        Set-ADUser $_ -Title $jobTitle -WhatIf
    }
}

在这种情况下,从技术上讲,您不需要分配
$g=$\ucode>,但是一旦您嵌套了
ForEach对象
调用,它可能有助于进行区分。

您不能包装
Get-ADGroup-Filter'Name中的内容,比如“Position-*”。\124; ForEach对象{$g=$\uquo;}