【问题标题】:Exporting Output From a Powershell Script to CSV将输出从 Powershell 脚本导出到 CSV
【发布时间】:2017-01-02 07:59:44
【问题描述】:

我找到了一个看起来正是我需要的 PowerShell 脚本,但是我在将输出导出到 CSV 时遇到了问题。我认为可能是foreach 部分造成了麻烦,想知道是否有人可以查明原因。

$Groups = Get-ADGroup -Properties * -Filter * -SearchBase "OU=Groups,DC=corp,DC=ourcompany,DC=Com" 
foreach ($G in $Groups)
{
    Write-Host $G.Name
    Write-Host "-------------"
    $G.Members
}

具体错误是:

不允许使用空的管道元素。
在行:6 字符:2
+ }|导出-csv-路径 c:\temp\adusers.csv
+ ~
    + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : EmptyPipeElement

【问题讨论】:

  • 我遇到了麻烦不是一个有用的问题描述,除非您解释您遇到的麻烦。我们无法查明您未指定问题的原因。
  • 如第一段所述,此 Powershell 脚本不会导出到 csv。具体错误是:在 line:6 char:2 + }|Export -csv -path c:\temp\adusers.csv + ~ 不允许使用空管道元素。 + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException + FullyQualifiedErrorId : EmptyPipeElement
  • 该错误消息解释了问题。它应该在您的问题中它所属的位置(以及在您发布问题时应该在哪里)。请edit您的问题包括该信息。 (当您遇到产生错误消息的问题并且它就在您面前的屏幕上时,绝对没有理由它不应该出现在您的问题中。您在问我们提供免费帮助;您应该提供您已有的信息,让我们尽可能轻松地为您提供帮助。)
  • 你必须一起写 export-csv 但是看看technet 也有有用的例子;)
  • @Eldo.Ob 这显然是一个错字,否则异常会是 CommandNotFoundException。

标签: csv powershell foreach


【解决方案1】:

试试这个:

$Groups = Get-ADGroup -Properties * -Filter * -SearchBase "OU=Groups,DC=corp,DC=ourcompany,DC=Com" 
$Groups | Select Name, Members | Export-Csv -Path "C:\temp\myfile.csv" -Delimiter ";"

如果您想要所有属性,只需使用

$Groups | Export-Csv -Path "C:\temp\myfile.csv" -Delimiter ";"

或随心所欲地获取您的属性:

$Groups | Select Name, Members, DistinguishedName, Email | Export-Csv -Path "C:\temp\myfile.csv" -Delimiter ";"

【讨论】:

  • 不要忘记Export-Csv 的-NoTypeInformation 参数。我从来没有遇到过我不想要这样的情况。
猜你喜欢
  • 2021-01-04
  • 2015-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-28
相关资源
最近更新 更多