我遇到一个问题,我有以下的结果,我不知道如何寻求帮助,以解决它自己.
[PS] C:\Windows\system32>$Usernames | ForEach-Object {Add-MailboxPermission -Identity "XXXXXX" -User "DOMAIN\$_" -Accessright Fullaccess -InheritanceType all -whatif}
User or group "DOMAIN\@{Alias=XXXXXXX}" wasn't found. Please make sure you've typed it correctly.
+ CategoryInfo : InvalidData: (:) [Add-MailboxPermission], ManagementObjectNotFoundException
+ FullyQualifiedErrorId : 2BB02DBA,Microsoft.Exchange.Management.RecipientTasks.AddMailboxPermission
+ PSComputerName : XXXXXXXXXX如何删除@{Alias=}?我要一个普通的用户名..。
[PS] C:\Windows\system32>$Usernames | Get-Member
TypeName: Selected.Microsoft.Exchange.Data.Directory.Management.ReducedRecipient
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
Alias NoteProperty System.String Alias=XXXXXX发布于 2015-08-25 11:18:02
显然,$Usernames包含带有属性Alias的对象。在将项传递到循环之前展开该属性:
$Usernames | Select-Object -Expand Alias | ForEach-Object { ... }或者使用子表达式获取用户名字符串中的属性值:
$Usernames | ForEach-Object {
Add-MailboxPermission -Identity "XXXXXX" -User "DOMAIN\$($_.Alias)" ...
}https://stackoverflow.com/questions/32200041
复制相似问题