首先,对于一般的PowerShell /编码,我是一个完全白痴,所以如果这是一个过于简单的问题,我会道歉。
我有一个脚本,我用来通过PowerShell创建分发列表:
param($name,$user=$(throw "You must specify the name of the group"))
New-DistributionGroup -Name $name -OrganizationalUnit "XXX.com/Distribution Lists"
Add-DistributionGroupMember -Identity "$name" -Member "$user"
第一个变量$ name是组的名称,第二个$ user是要添加到组中的用户的名称。
理想情况下,我想循环添加用户,以便有人可以使用./script GROUPNAME User1 User2 User3 User4 User5
唤起脚本。
任何人都可以提出任何见解或指出我正确的方向吗?
答案 0 :(得分:1)
您可以将$user
或更确切地说$users
视为数组:
$users | %{ Add-DistributionGroupMember -Identity "$name" -Member $_ }
(可能有更好的方法可以添加多个用户,但上面的内容可以帮助您入门。)
脚本可以像:
一样调用.\script GROUPNAME User1,User2,User3
答案 1 :(得分:1)
尝试这样的事情:
-- script --
param($name, [string[]]$users=$(throw "You must specify the name of the user(s)"))
New-DistributionGroup -Name $name -OrganizationalUnit "XXX.com/Distribution Lists"
foreach($user in $users)
{
Add-DistributionGroupMember -Identity $name -Member $user
}
答案 2 :(得分:1)
您可以更改Name参数的类型以接受多个名称,并将其传递给Add-DistributionGroupMember
cmdlet:
param($name, [string[]]$users=$(throw "You must specify the name of the user(s)"))
$dg = New-DistributionGroup -Name $name -OrganizationalUnit "XXX.com/Distribution Lists"
$users | Add-DistributionGroupMember -Identity $dg