Como faço loop através de uma linha de um arquivo csv no powershell

Eu quero processar um arquivo csv no powershell, mas eu não sei o que os cabeçalhos de coluna no arquivo CSV serão quando ele é processado.

Por exemplo:

$path = "d:\scratch\export.csv"
$csv = Import-csv -path $path

foreach($line in $csv)
{ 
    foreach ($head in $line | get-member | where-object {$_.MemberType -eq "NoteProperty"} | select Definition)
    {
        #pseudocode...
        doSomething($head.columnName, $head.value)
    }

}

Como faço loop através da linha no arquivo csv, obtendo o nome da coluna e o valor? Ou há outra maneira que eu deveria estar fazendo isso (como não usando Import-csv)?

questionAnswers(3)

yourAnswerToTheQuestion