以下脚本提取所有Active Directory组及其相应的成员,但我的启用状态输出为空。
我希望在输出中获得启用状态以及其他3个属性。
我将代码运行为code.ps1>> user.txt。
//Constructor
public StartQuote(WebDriver driver) {
PageFactory.initElements(driver, this);
this.driver = driver; //add this
}
示例输出:
ForEach ($GroupName in (Get-ADGroup -Filter *))
{
"The AD Group $GroupName.Name members are:"
Get-ADGroupMember -Identity $GroupName.Name | Select Name,samAccountName,Enabled,ObjectClass | Where {$_.ObjectClass -eq "user"} | Where {$_.Enabled -eq $true}
"`n"
}
答案 0 :(得分:1)
试试这个:
ForEach ($GroupName in (Get-ADGroup -Filter *))
{
$GroupMembers = Get-ADGroupMember -Identity $GroupName.Name | Where {$_.ObjectClass -eq "user"} | Get-ADUser -Properties Enabled | Where {$_.Enabled -eq $true} | Select Name,samAccountName,Enabled,ObjectClass
if ($GroupMembers) {
"The AD Group $($GroupName.Name) members are:"
$GroupMembers
"`n"
}
}
$()
来访问".."
中对象的属性串)。我的版本修改了只在该组实际拥有用户成员时才写入该行。Where
应该尽可能地使用。Enabled
属性,因此您需要将结果通过管道传输到Get-ADUser
,然后指定您希望通过-Properties
参数返回该属性。