【发布时间】:2019-07-24 00:53:36
【问题描述】:
我正在尝试将 import-csv 与 -erroraction SilentlyContinue 一起使用,但是当文件导入时它仍然会引发错误:
Import-Csv : The member "Id" is already present.
At C:\Users\admin\Desktop\Parse.ps1:65 char:24
+ ... $csvData = Import-Csv -LiteralPath $file.FullName -ErrorAction Silen ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Import-Csv], ExtendedTypeSystemException
+ FullyQualifiedErrorId : AlreadyPresentPSMemberInfoInternalCollectionAdd,Microsoft.PowerShell.Commands.ImportCsvCommand
我也尝试过设置 Erroractionpreference 但它仍然抛出错误。
还有其他人看到过这个或知道如何绕过它吗?
【问题讨论】:
-
您的 CSV 文件是否有两个同名的列/标题?由于这是一个终止错误,您可以使用 try-catch 使其消失。
-
是的,我知道根本原因.. 下一行是 IF($error) 然后我通过将第一行拆分为标题并重命名重复项并添加一个数字来解析 CSV。 Try/catch 虽然有效,所以如果您将评论作为解决方案发布,我会接受它。
标签: powershell csv