标签: quest

powershell sort-object无法按预期工作

我尝试使用sort-object cmdlet按Id在此处对进程进行排序:

Get-Process | Sort-Object -Property Id
Run Code Online (Sandbox Code Playgroud)

而且运作良好.在我发现的任何其他示例中,排序工作正常,但是当我尝试使用这个单行程序从Active Directory中的employeeID对员工进行排序时:

Get-QADUser -IncludeAllProperties -SerializeValues | ? {?_.Mail} | select employeeID | sort-object -property employeeID
Run Code Online (Sandbox Code Playgroud)

我得到这样的东西:

11
1104
1105
1185
119
12
...

powershell quest powershell-2.0 powershell-3.0

9
推荐指数
1
解决办法
9335
查看次数

获取 Active Directory 中的所有空组

我一直想弄清楚如何获取所有空的 Active Directory 组。我想出了这个命令,它选择没有成员且不是任何成员的组。

Get-QADGroup -GroupType Security -SizeLimit 0 | where-object {$_.Members.Count -eq 0 -and $_.MemberOf.Count -eq 0} | select GroupName, ParentContainer | Export-Csv c:\emptygroups.csv
Run Code Online (Sandbox Code Playgroud)

这基本上是正确的,但它说某些组(如默认组域计算机)为空,但它不是空的。这个特定组只有计算机成员,但似乎没有选择其他只有计算机的组。

有谁知道为什么这个命令会吸引一些有成员的人?

powershell quest

4
推荐指数
2
解决办法
4万
查看次数

检查用户是否是 AD 组列表的成员

$groups = 'group1', 'group2'....
Run Code Online (Sandbox Code Playgroud)

我需要检查用户是否在特定的 AD 组中,如果不在,则回显组名;我可以在管道中完成吗?

我用谷歌搜索了很多,但找不到任何东西,也许我在谷歌英语搜索方面太糟糕了:)。

$groups |
    Get-QADGroupMember |
    Get-QADUser -SamAccountName 'lalala' | ForEach-Object {
        if ($_.SamAccountName -ne $null) {
            Write-Host "ok"
        } else {
            Write-Host 'not ok'
        }
    }
Run Code Online (Sandbox Code Playgroud)

我怎样才能显示:not ok. user is not ingroup_name

powershell active-directory quest

4
推荐指数
1
解决办法
6万
查看次数

如何获取仅具有填充值的属性?

如何获取仅具有填充值的属性?

所以,例如,如果我跑

Get-QADUser -Identity "SomeOne" -IncludeAllProperties
Run Code Online (Sandbox Code Playgroud)

输出当然包括..所有属性,包括那些有和没有值的属性.我想要一个只有值的属性列表.一般来说怎么做?

这不仅限于Quest Cmdlet,我只是Get-QADUser作为一个例子.

powershell quest

3
推荐指数
2
解决办法
5750
查看次数