简体   繁体   English

如何使用 PowerShell 中的 Import-csv 处理 CSV 文件的动态列

[英]How to handle dynamic columns for CSV file using Import-csv in PowerShell

CSV file does not have headers, Column may differ each time. CSV 文件没有标题,列可能每次都不同。 I want to compare with first column of csv file, but while exporting I would display the full row.我想与 csv 文件的第一列进行比较,但是在导出时我会显示整行。

$getErrorCodes= {102,103}

CSV FILE( No headers)
101,101,101
102,102,102

Here is my code这是我的代码

Import-Csv $CSVFile -Header col1 | Where-Object {!($getErrorCodes.Contains($_.col1)) } | Export-Csv "resultfile.csv"

Current output
101

Expected output
101,101,101

For dynamic header, I used like this.对于动态header,我是这样用的。 Dynamically will change $headers variable accordingly column count on csv.将动态更改 $headers 变量,相应地在 csv 上的列计数。

$headers = 'Col1,Col2,Col3'

$headercolumns = $headers.ToString().Split(",") 
  
Import-Csv $CSVFile -Header  $headercolumns | Where-Object {!($getErrorCodes.Contains($_.col1)) } | Export-Csv  "resultfile.csv"

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

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