首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Export-csv:合并重复行

Export-csv:合并重复行
EN

Stack Overflow用户
提问于 2014-03-28 21:49:25
回答 1查看 813关注 0票数 0

总而言之,多亏了quesiton Edit a script I found to import a list of adusers, grab their info and export back to another csv中的解决方案,我才能想出以下脚本。该脚本从csv文件中提取用户名,连接到ad,并将用户组导出到不同的csv。这部分工作得很完美。这就是我遇到问题的地方。每个用户名/组都放在一个新的行中。这是完美的,除了多个组中的用户。举个例子

代码语言:javascript
复制
ColA     ColB
User     Group
bob      admin 
jeff     domain admin  
jeff     test admin 
jeff     power user 

我想要做的是想出一种以以下格式导出的方法

代码语言:javascript
复制
ColA     ColB           ColC          ColD   
User     Group          Group         Group
bob      admin
jeff     domian admin   test admin    power user 

这是我的脚本

代码语言:javascript
复制
Begin {
Try { Import-Module ActiveDirectory -ErrorAction Stop }
Catch { Write-Host "Unable to load Active Directory module, is RSAT installed?"; Break }
}

Process {
$UserList=Get-Content C:\Userlist.csv
$users = ForEach ($U in $UserList)
{   $UN = Get-ADUser $U -Properties MemberOf
$Groups = ForEach ($Group in ($UN.MemberOf))
{   (Get-ADGroup $Group).Name
} 
$Groups = $Groups | Sort
ForEach ($Group in $Groups)
{   New-Object PSObject -Property @{
        Name = $UN.Name
        Group = $Group
    } 
} 
} 
$users | export-csv "c:\grouptest.csv" -append
} 

这可以做到吗?

EN

回答 1

Stack Overflow用户

发布于 2014-03-28 22:00:47

除非我误解了你的目标,否则你只需要替换这个:

代码语言:javascript
复制
ForEach ($Group in $Groups)
{   New-Object PSObject -Property @{
        Name = $UN.Name
        Group = $Group
    } 
}

有了这个:

代码语言:javascript
复制
New-Object PSObject -Property @{
    Name  = $UN.Name
    Group = $Groups
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22714702

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档