0
function getNTAccounts {
    Add-PSSnapin Quest.ActiveRoles.ADManagement
connect-QADService

    $accounts = @()
   Get-QADUser -CreatedAfter (Get-Date).AddDays(-3) -SerializeValue | Select-Object "samaccountname" | Foreach-Object{ 
        $accounts += $_.samaccountname
   }

   Disconnect-QADService

   return ,$lastaccounts
}




$tmpResult = getNTAccounts

你能告诉我为什么我得到这个:

{Quest.ActiveRoles.ArsPowerShellSnapIn.Data.ArsADConnection, Account1 Account2}

我想得到一个简单的数组,但它在数组的第一个元素中包含这个字符串。

提前致谢,

4

1 回答 1

1

尝试以下更改:

function getNTAccounts {
    Add-PSSnapin Quest.ActiveRoles.ADManagement
connect-QADService | Out-Null

    $accounts = @()
   Get-QADUser -CreatedAfter (Get-Date).AddDays(-3) -SerializeValue | Select-Object "samaccountname" | Foreach-Object{ 
        $accounts += $_.samaccountname
   }

   Disconnect-QADService

   return ,$accounts
}




$tmpResult = getNTAccounts

将 Connect-QADService 设置为 null 可防止您退出的额外条目。请记住,发送到管道的所有内容都将被视为从函数返回。你也有 $lastaccounts 而不是 $accounts,但我怀疑这是在发布问题时无意中完成的。

于 2012-09-17T19:27:59.677 回答