Powershell用相邻值替换csv单元格中的空值

时间:2017-06-16 13:10:38

标签: powershell csv

我正在尝试使用PowerShell将csv文件中的Team2列中的空值替换为Team1列中的相邻值。我是全新的,所以希望有人能指出我正确的方向。

我有这种格式的CSV,Team2列中的几个值将为空值:

test   test2    Team1    Team2
----   -----    -----    ----- 
0000   aaaaa    Name1    Name6
0001   wwwww    Name2   
0004   ttttt    Name3    Name8
0005   ttttt    Name4 
0006   hhhhh    Name5    Name10

2 个答案:

答案 0 :(得分:2)

因此,您可以使用Import-CSV cmdlet将文件导入对象。然后,您可以遍历对象以查找Team2为空或空的位置。有一个字符串方法只检查它并返回$True$False。所以这可以是If块中的条件。然后我们将返回该值,以便可以将其传递到管道Export-CSV

Import-CSV $FilePath | ForEach-Object {
    If  ([string]::IsNullOrEmpty($_.Team2)) {
        $_.Team2 = $_.Team1
    }
    $_
} | Export-CSV $ExportPath

答案 1 :(得分:1)

其他方法

ipcsv $FilePath | %{if(!$_.Team2) {$_.Team2 = $_.Team1} ; $_ } |  epcsv $ExportPath -notype