Export-Csv不会创建文件

时间:2017-11-20 14:56:43

标签: powershell csv export export-to-csv

我需要将CSV数据导出为CSV文件。我有这段代码:

$Input | where {$AnotherFile.userPrincipalName -notcontains $_.login} |
    Export-Csv -Path "$PSScriptRoot + \output.csv" -Delimiter ";" -NoTypeInformation

在这种情况下,脚本以此错误结束:部分路径“ script root + \ output.csv未找到”。 脚本根正确写入脚本所在文件夹的完整路径。

我也尝试了这个:

$Input | where {$AnotherFile.userPrincipalName -notcontains $_.login} |
    Export-Csv -Path "output.csv" -Delimiter ";" -NoTypeInformation

在这种情况下,脚本似乎顺利完成(没有显示错误),但是没有创建文件。我甚至尝试搜索磁盘,如果它不是在另一个目录中创建的。

这完全正确:

$Input | where {$File.userPrincipalName -notcontains $_.login}

在这种情况下,我得到了我想要的所有数据,在屏幕上列出。哪个好,但没用。我在Export-Csv cmdlet中犯了什么错误?

1 个答案:

答案 0 :(得分:1)

CSV "$PSScriptRoot + \output.csv"的路径将被评估为C:\folder + \output.csv,这可能不是您的意图。

删除空格和+所以它只是:"$PSScriptRoot\output.csv"这将评估为C:\folder\output.csv

$Input | where {$AnotherFile.userPrincipalName -notcontains $_.login} | Export-Csv -Path "$PSScriptRoot\output.csv" -Delimiter ";" -NoTypeInformation