Windows Powershell-导出用户成员。。根据csv用户列表分组

Windows Powershell-导出用户成员。。根据csv用户列表分组,windows,powershell,csv,Windows,Powershell,Csv,正在尝试导入包含用户列表的csv文件,并导出包含这些用户及其所属组的csv文件 我尝试了这个主题的脚本: 但它不起作用 我的用户列表文件的示例(test_alex.csv): 这就是我得到的错误: Get-AdUser : The search filter cannot be recognized At line:2 char:29 + ForEach-Object -pv user { Get-AdUser -filter "displayname -eq '$($_.username)'

正在尝试导入包含用户列表的csv文件,并导出包含这些用户及其所属组的csv文件

我尝试了这个主题的脚本:

但它不起作用

我的用户列表文件的示例(test_alex.csv):

这就是我得到的错误:

Get-AdUser : The search filter cannot be recognized At line:2 char:29 + ForEach-Object -pv user { Get-AdUser -filter "displayname -eq '$($_.username)' ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [Get-ADUser], ADException + FullyQualifiedErrorId : ActiveDirectoryServer:8254,Microsoft.ActiveDirectory.Management.Commands.GetADUser

也许不是powershell专家提供的最佳解决方案,但它完全满足了我的需要。

首先下载此脚本:

然后打开powershell ISE并将此脚本和您需要的脚本一起使用 下载

我的文件名:userlist.csv

$user = "userlist.csv"
$content = Get-Content $user
$content | Foreach {$_.TrimEnd()} | Set-Content $user
C:\temp\TheActualScripts\Multiple_UserGroup_InputFile.ps1 -CSVFile "C:\temp\copy\$user"
Rename-Item -Path "C:\temp\TheActualScripts\ReportFile.txt" -NewName "$user"
然后,您将在脚本所在的文件夹中获得名为“ReportFile.txt”的输出文件,对我来说,它是: C:\temp\theActualScript\ReportFile.txt

脚本的最后一行将文件“ReportFile.txt”的名称更改为“userlist”文件的名称

重要


请注意,您正在处理的用户文件中没有空格,因为如果有空格,脚本将无法工作,它只会给您一个空的“ReportFile.txt”文件。

请添加有关哪些内容无法工作的更多详细信息,您期望得到什么?会发生什么?(请参阅)您在发布的URL上尝试了该脚本,出现了什么错误?你能发布你的代码版本以便我们开始排除故障吗?请将错误输入到上面的帖子中。还有“-eq”表示数字。。。请改为尝试
-match
。@shadow2020改为-match并获取此错误“错误解析查询:'displayname-match”
$user = "userlist.csv"
$content = Get-Content $user
$content | Foreach {$_.TrimEnd()} | Set-Content $user
C:\temp\TheActualScripts\Multiple_UserGroup_InputFile.ps1 -CSVFile "C:\temp\copy\$user"
Rename-Item -Path "C:\temp\TheActualScripts\ReportFile.txt" -NewName "$user"