0

我创建了一个包含几行或几行的 csv 文件。现在想的是导入该文件并每行创建一个新文件。所以每一行都有自己的内容文件。

我创建了以下 powershell 代码:

$Import = import-csv C:\temp\output.csv

$CreateFileName = $Import | Select-Object $_.TicketNumber -Expand "TicketNumber"
foreach ($row in $Import)
  {
    export-csv -Path $row.CreateFileName.csv -noType
  }

运行此脚本时出现以下错误:

cmdlet Export-Csv at command pipeline position 1
Supply values for the following parameters:
InputObject:
4

2 回答 2

0

如果您希望输出文件包含带有标题行的票号,TicketNumber您可以执行以下操作:

Import-Csv 'C:\temp\output.csv' | select TicketNumber | % {
  Export-Csv -Input $_ -Path "$($_.TicketNumber).CreateFileName.csv" -noType
}

如果您希望输出文件仅包含票号(没有标题行),您可以执行以下操作:

Import-Csv 'C:\temp\output.csv' | select TicketNumber -Expand TicketNumber | % {
  Set-Content "$_.CreateFileName.csv" $_
}
于 2013-09-05T11:27:49.300 回答
0

那是因为以下内容没有返回任何内容:

$row.CreateFileName.csv

所以整行变成:

export-csv -Path -noType 

并且 PowerShell 会帮助您认为您忘记了路径。

于 2013-09-09T15:51:41.240 回答