0

我正在学习 Powershell,我试图理解为什么这不起作用。我验证了 -Identity 接受管道,所以我猜测它传递的值的类型,但我不明白为什么这不起作用

获取 ADUser -Identity (Import-Csv .\GROUP.csv)

GROUP.csv 是我桌面上的一个文件,其中包含 SID 列表。只需执行 Import-Csv .\GROUP.csv,我就可以毫无问题地阅读它。这是结果

S-1-5-21-583907252-1979792683-725345543-112088

S-1-5-21-583907252-1979792683-725345543-48881
S-1-5-21-583907252-1979792683-725345543-48880
S -1-5-21-583907252-1979792683-72531456
S -1-5-21-583907252-1979792683-7253145 -21-583907252-1979792683-725345543-1255569
S
-
1-1-5-21-521-583907252-1979792683-725545454343434343434374 1979792683-725345543-183175
S-1-5-21-583907252-1979792683-725345543-183136
S-1-5-21-583907252-1979792683-725345543-183130
S-1-5-21-583907252-1979792683-725345543-183112
S-1-5-21-583907252-1979792683-725345543-176034
S-1-5-21-583907252-1979792683-725345543-176023
S-
1-5-21-583907252-19797955683-702254 -21-583907252-1979792683-725345543-176002
S-1-5-21-583907252-1979792683-725345543-175974
S-1-5-21-583907252-1979792683-725345543-175931
S-
1-5-21-583907252-19797975683-78893-1979792683-725345543-175931 -21-583907252-197979792683-725555454343-175836
S
-
1-1-5-21-5-21-583907252-19797979797979797979797979797979255555454555555558804 1979792683-725345543-183180
S-1-5-21-583907252-1979792683-725345543-31219
S-1-5-21-583907252-1979792683-725345543-176037
S-1-5-21-583907252-1979792683-725345543-82576
S-1-5-21-583907252-1979792683-725345543-175905
S-1-5-21-583907252-1979792683-725345543-175777
S-1-5-21-583907252-19797542683-75654-3

最重要的是,我可以使用 Get-ADUser -Identity 并且效果很好。

为什么在尝试将一个管道连接到另一个时会得到以下信息?

无法将“System.Object[]”转换为参数“Identity”所需的类型“Microsoft.ActiveDirectory.Management.ADUser”。不支持指定的方法。在 line:1 char:22 + Get-ADUser -Identity (Get-Content .\group.txt) + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo:InvalidArgument:(:) [Get-ADUser],ParameterBindingException + FullyQualifiedErrorId:CannotConvertArgument,Microsoft.ActiveDirectory.Management.Commands.GetADUser

4

2 回答 2

1

如果 .csv 文件中第一列的名称是sid,那么您也可以尝试此选项

 (Import-CSV .\Group.csv) | foreach-object { get-aduser -Identity $_.sid }
于 2013-07-03T19:45:32.800 回答
1

-identity参数不接受array作为输入,但它接受pipeline的输入value比你可以做的:

Import-Csv .\GROUP.csv | Get-ADUser
于 2013-07-03T19:31:24.450 回答