我正在尝试使用它Get-AQDUser
来获取每个国家/地区的用户总数列表。到目前为止,有这个
$Country = Read-Host "Please Enter the country of which you want to see users "
Get-QADUser -ObjectAttributes @{co="$Country"} | ft displayname, co -auto
这完美地列出了用户名,但没有汇总。为了汇总它们,我在上面的列表中添加了以下内容
| Measure-Object
这给了我用户数量,但计算出来的用户数量比实际数量多 4 个。如果我在 ADUC 中搜索用户,它会给出正确的数字。我也尝试使用参数.Count
,但这也给了我比实际数量多 4 个用户。我正在从我们的 AD 的根目录进行搜索。
有什么想法吗,为什么|measure-object
总是给我多 4 个用户?
答案1
Measure-Object
措施任何被管道传输到其中,在你的情况下, 的输出Format-Table
。这意味着Measure-Object
将措施表格,包括标题、分隔符等,以及值。
例子:
Get-ADUser jscott | Measure-Object
Count : 1
...
Get-ADUser jscott | Format-Table | Measure-Object
Count : 5
...
正好多四个。在计算输出值后,您可能应该跳过Format-Table
直到您想要在屏幕上显示输出值。使用您的示例,以下内容应返回正确的用户数量:
Get-QADUser -ObjectAttributes @{co="$Country"} | Measure-Object