2014-11-21 48 views
0

我想从作业中返回组成员列表,但从Receive-Job中得不到任何结果。我想获取包含数组的变量或传递给新数组。接收作业:未取得结果

下面的示例代码。我如何获得Receive-Job以返回$objGroupMembers中的数据?

Start-Job -Name 'GroupName' -ScriptBlock { 
    Get-PSSnapin -Registered | Add-PSSnapin; 

    $aryProperties = @(
     "SamAccountName" 
     "employeeid" 
     "firstname" 
     "lastname" 
     "email" 
     "title" 
     "department" 
    ) 

    $objGroupMembers = Get-QADGroupMember -Identity "GroupName" -Indirect -SizeLimit 0 -DontUseDefaultIncludedProperties -IncludedProperties $aryProperties | Select-Object $aryProperties 
} 

回答

1

你的工作没有返回任何东西。基本上,工作就像在后台运行一个新的控制台。任何输出到该控制台都可以使用Receive-Job进行检索。但在你的情况下,你将结果分配给你的变量,就是这样。以下应该有所帮助:

Start-Job -Name 'GroupName' -ScriptBlock { 
    Get-PSSnapin -Registered | Add-PSSnapin; 

    $aryProperties = @(
    "SamAccountName" 
    "employeeid" 
    "firstname" 
    "lastname" 
    "email" 
    "title" 
    "department" 
    ) 


    $objGroupMembers = Get-QADGroupMember -Identity "GroupName" -Indirect -SizeLimit 0 -DontUseDefaultIncludedProperties -IncludedProperties $aryProperties | Select-Object $aryProperties 

    $objGroupMembers 
} 
+0

谢谢!不能相信我没有听到。很好,现在可以改善我所有团队的Po $ h脚本。 – KevinW 2014-11-21 20:49:19

+0

而不是回显'$ objGroupMembers'只是不要将'Get-QADGroupMember'的输出分配给一个变量。 – 2014-11-22 12:35:30

+0

@AnsgarWiechers:是的,为了解释的缘故,我是这样写的,但是我同意你的看法。 – 2014-11-22 12:38:53