Powershell数组问题

Powershell数组问题,powershell,Powershell,我是Powershell的新手。我想做的是浏览一个文本文件path.txt,其中包含500多个目录列表 然后,我需要得到什么广告安全组分配给每个目录 然后展示每个小组的工作人员 我已经完成了以下操作,它将遍历文本文件,并为作为域工作一部分的每个目录转储ACP 我知道我需要做什么。 将目录文本文件放入数组中 从数组中选择标识引用FileSys。对于每个IdentityReference,转储此广告组中的用户 我想输出到文本文件/csv 目录 显示访问权限的广告组。最后是该组中的用户 重复这个过程。

我是Powershell的新手。我想做的是浏览一个文本文件path.txt,其中包含500多个目录列表 然后,我需要得到什么广告安全组分配给每个目录 然后展示每个小组的工作人员

我已经完成了以下操作,它将遍历文本文件,并为作为域工作一部分的每个目录转储ACP

我知道我需要做什么。 将目录文本文件放入数组中 从数组中选择标识引用FileSys。对于每个IdentityReference,转储此广告组中的用户

我想输出到文本文件/csv 目录 显示访问权限的广告组。最后是该组中的用户

重复这个过程。 我已经完成了下面的工作,只浏览了前6个目录,只显示安全组

有人能给我一个快速的主意吗?谢谢

$path = "c:\path.txt"
$patharray = gc $path
$linebreak = "#########################"
get-acl $patharray[0..5] | select -ExpandProperty access | where {$_.IdentityReference -like "WORK*" } | ft -property IdentityReference,FileSys

我建议查看active directory模块导入模块activedirectory,它自动出现在任何AD服务器上,或者可以使用AD工具添加

只要在本地控制台窗口中玩一下,我就可以做到:

$test = get-acl $path | select -expandproperty access
$group = $test[1].identityreference.value.split('\')[1]
get-adgroupmember $group
因此,我将访问列表分配给变量$test,在\character cos Im lazy/aftermal上拆分一个结果值,然后使用提供的cmdlet获取成员列表

$test[1]是第一个组条目$test[0]是一个特定的用户,而.identityreferencevalue.split'\'[1]只意味着我在将字符串拆分为两段后抓取了第二个元素

我希望这有帮助。我自己也不是专家。Ed Wilson博客提供了一些关于在不使用cmdlet的情况下查询广告的重要信息。您需要对组名进行一些验证,因为可能有两个同名的组位于不同的容器中


在对输出进行实际格式化之前,不需要通过管道传输的其他内容,例如“格式表”。因此,在收集数据之前,我不会浪费太多精力格式化数据。

酷,我会研究一下。现在我正在抗击流感。