我需要导出一个列表,显示三个不同组的所有用户成员。
这是我的第一次尝试:
Import-Module ActiveDirectory
$desktop = Get-ADGroupMember -Identity "group1" | Select-Object -ExpandProperty samaccountname
$officetd = Get-ADGroupMember -Identity "group2" | Select-Object -ExpandProperty samaccountname
$officepro = Get-ADGroupMember -Identity "group3" | Select-Object -ExpandProperty samaccountname
我试图通过管道传输第一个变量来过滤掉:
$desktop | Where-Object {$_ -contains $officetd}
但它不起作用。
知道我该怎么做吗?
答案 0 :(得分:1)
差不多......试试这个:
from itertools import groupby
example = "1,234.45kg (in metric system)"
labels = 'dpdddpddllwpllwllllllwllllllp'
output = [''.join(group)
for _, group in groupby(example, key=lambda ch: labels[example.index(ch)])]
print(output)
# ['1', ',', '234', '.', '45', 'kg', ' ', '(', 'in', ' ', 'metric', ' ', 'system', ')']
对于此任务,您有一些略有不同的选项。要么检查单个元素是 元素集合,就像上面的代码那样。或者你检查一个元素集合是否包含一个元素,就像下面的代码一样:
$desktop | Where-Object {$_ -in $officetd -and $_ -in $officepro}
因此,选择比较的正确“方向”非常重要。