Function powershell通过-outvariable+;函数中的变量
我正在导入的会话窗口中运行。不知道这是否重要 我试图向函数中的数组添加一些变量值Function powershell通过-outvariable+;函数中的变量,function,powershell,Function,Powershell,我正在导入的会话窗口中运行。不知道这是否重要 我试图向函数中的数组添加一些变量值 $Session=New PsSession-ConfigurationName Microsoft.Exchange-ConnectionUri”http://emailserver/powershell/“-身份验证Kerberos 导入PsSession$会话-allowclobber 在Microsoft.SharePoint.PowerShell中添加PSSNaps $group1=“会计” $group
$Session=New PsSession-ConfigurationName Microsoft.Exchange-ConnectionUri”http://emailserver/powershell/“-身份验证Kerberos
导入PsSession$会话-allowclobber
在Microsoft.SharePoint.PowerShell中添加PSSNaps
$group1=“会计”
$group2=“HR”
函数AddUsersToGroups{
写入输出$Group1-outvariable+Adgroups
写入输出$Group2-outvariable+Adgroups
}
当我突出显示并运行Powershell ISE中的行时,它们工作正常,并创建变量$AdGroups,组合数据就在那里
但是当我运行函数时,我看到的只是输出,没有创建任何变量
PS C:\Windows\system32>addusertogroup
第一组
第2组
有点难倒了。我试图创建一个变量
$AdGroups=@()
作为第一行,但也失败了 不确定您想要实现什么,但是AdGroups
变量仅在AddUsersToGroups
函数的范围内可用
解决此问题的一种方法是添加脚本:
范围,如下所示:
Function AddUsersToGroups{
Write-output $Group1 -outvariable +script:Adgroups
Write-output $Group2 -outvariable +script:Adgroups
}
现在,调用函数后,您应该能够在外部访问$Adgroups