Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell更改多用户广告属性_Powershell - Fatal编程技术网

Powershell更改多用户广告属性

Powershell更改多用户广告属性,powershell,Powershell,还在学习广告的Powershell,我有一个问题困扰着我。必须在特定位置更改广告中多个用户的广告属性,例如,我们在同一个OU中有来自柏林和华盛顿的人,每个配置文件中都设置了城市,但我想知道,在更改这些位置之一的地址之前,我是否还需要获取属性 Get-ADUser -filter 'City -like "Berlin"' -SearchBase 'OU=Users,OU=Staff,DC=Contoso,DC=com' -Properties StreetAddress, P

还在学习广告的Powershell,我有一个问题困扰着我。必须在特定位置更改广告中多个用户的广告属性,例如,我们在同一个OU中有来自柏林和华盛顿的人,每个配置文件中都设置了城市,但我想知道,在更改这些位置之一的地址之前,我是否还需要获取属性

Get-ADUser -filter 'City -like "Berlin"' -SearchBase 'OU=Users,OU=Staff,DC=Contoso,DC=com' -Properties StreetAddress, PostalCode | % {Set-ADUser $_ -Replace @{StreetAddress="New street 11";PostalCode="221202XX"}}
或者,如果它也可以工作,而无需执行-Properties,只需将管道过滤器城市结果设置为ADUser


谢谢。

您不需要指定
-Properties
,除非您希望在输出中看到它们。您也不需要foreach,只需将管道连接到
Set ADUser
即可

Get-ADUser -filter 'City -like "Berlin"' -SearchBase 'OU=Users,OU=Staff,DC=Contoso,DC=com' |
    Set-ADUser $_ -Replace @{StreetAddress="New street 11";PostalCode="221202XX"}
这将很好地更新这些值。过滤也是如此。以下命令将对postalcode进行筛选,但除非添加
-Properties postalcode

Get-ADUser -Filter "PostalCode -eq '221202XX'"

谢谢你们的回答,我已经漏掉了-属性,这似乎很好,也尝试过了,但没有foreach,这是行不通的,因为我猜Set ADUser不知道哪些被过滤掉的用户需要更新。所以我不得不使用

Get-ADUser -filter 'City -like "Berlin"' -SearchBase 'OU=Users,OU=Staff,DC=Contoso,DC=com' | % {Set-ADUser $_ -Replace @{StreetAddress="New street 11";PostalCode="221202XX"}}
如果我不使用foreach

Get-ADUser -filter 'City -like "Berlin"' -SearchBase 'OU=Users,OU=Staff,DC=Contoso,DC=com' | Set-ADUser $_ -Replace @{StreetAddress="New street 11";PostalCode="221202XX"}
我犯了一个错误

Set ADUser:无法验证参数“Identity”上的参数。参数为空。为 参数,然后再次尝试运行该命令


但是不管怎样,如果没有-Properties(这是我主要关心的问题)似乎还可以

如果没有ForEach对象,请删除th
$\uu
,因为您正在管道化用户对象。这是@DougMaurer答案中的一个输入错误