我无法正确排序CSV。我有以下格式的数据:
FILE.CSV:
Name,Application
user1,app1
user1,app1
user2,app1
user2,app2
...
我能够获得一个包含多个app1,多个app2的用户列表,但我无法弄清楚如何使用app1和app2获取用户列表。
$users = Import-Csv file.csv
$users | ? {$_.Application -eq "app1" | Group Name | ? {$_.Count -gt 1} |
% {$_ | select -ExpandProperty group | select -first 1}
$users | ? {$_.Application -eq "app2" | Group Name | ? {$_.Count -gt 1} |
% {$_ | select -ExpandProperty group | select -first 1}
我甚至不知道从哪里开始合并两者。
答案 0 :(得分:2)
按用户名分组,并检查每个组是否包含每个应用程序的条目:
$UsersWithBothApps = $users | Group-Object -Property Name | ForEach-Object {
$Apps = $_.Group | Select-Object -ExpandProperty Application
if($Apps -contains "app1" -and $Apps -contains "app2"){
$_.Name
}
}
答案 1 :(得分:0)
另一种方法:
{{1}}