所以我有以下代码,它有一个foreach循环来提取一些组成员资格数据。在代码的最后,我想重新计算数据并再次写入以进行确认。我想知道保持这种简洁明了的最佳方法是什么?我在java中知道,例如,我只是创建一个方法并且每次都调用它但不确定在PowerShell中是否成立。
如果我滥用术语,我道歉 - 我正试着在我去的时候选择这个
$User = read-host -Prompt "User Name"
$user_dn = (get-mailbox $user).distinguishedname
"Finding all groups that $user is a member of..."
$membership = foreach ($group in get-distributiongroup -resultsize unlimited){
if ((get-distributiongroupmember $group.identity | select -expand distinguishedname) -contains $user_dn)
{$group.alias}
}
" "
"----------------------"
$membership
"----------------------"
" "
"Would you like to remove $user from all distribution groups? Press 1 for yes, or 2 for no."
$opt = read-host "1 - yes, 2 - no"
write-host $opt
switch ($opt){
1{
foreach ($a in $membership){
Remove-DistributionGroupMember -Identity $a -Member $user
}
}
2{
"No action taken. Goodbye"
}
}
答案 0 :(得分:0)
是的,Powershell中您需要的正确用语是函数。
您可以在Powershell提示符中运行命令Help About_Functions
,以全面了解它们的工作原理。
答案 1 :(得分:0)
是的,您可以在PowerShell中定义函数。查看Get-Help About_Functions以获取有关如何编写它们的教程。另外,请记住在脚本中调用之前必须定义函数。我通常只是在脚本的顶部定义我的所有函数。