简体   繁体   English

将数据输出到CSV

[英]Output Data to CSV

Can someone please tell me how I can output data in a CSV format? 有人可以告诉我如何输出CSV格式的数据吗? I want to have it so that it clearly shows what users belong to what group: 我想要它,以便清楚地显示哪些用户属于哪个组:

$site = Get-SPSite http://www.dev.com 

$groups = $site.RootWeb.sitegroups

foreach ($grp in $groups) {
  "Group: " + $grp.name
  foreach ($user in $grp.users) {
    "  User: " + $user.name
  }
}

$site.Dispose()

For exporting data to CSV use Export-Csv . 要将数据导出到CSV,请使用Export-Csv Note, however, that Export-Csv exports the properties of objects as the CSV fields, so you have to prepare your data accordingly. 但是请注意, Export-Csv将对象的属性Export-Csv为CSV字段,因此您必须相应地准备数据。

$groups | ForEach-object {
  $grp = $_
  $grp.Users | ForEach-Object {
    New-Object -Type PSObject -Property @{
      'User'  = $_.Name
      'Group' = $grp.Name
    }
  }
} | Export-Csv 'C:\path\to\output.csv' -NoType

If you want one line per group with all the users in a single field, you could do something like this: 如果您希望每组一行,并且所有用户都在一个字段中,则可以执行以下操作:

$groups | ForEach-Object {
  New-Object -Type PSObject -Property @{
    'Group' = $_.Name
    'Users' = $_.Users -join '/'
  }
} | Export-Csv 'C:\path\to\output.csv' -NoType

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM