Вывод 2-х колоночного csv-файла с помощью Powershell

У меня есть 2 CSV-файла, которые я сравниваю и сохраняю результаты в текстовом файле, используя

Foreach(..data in dataSet..) {
    #Setting variables

  if("$samInitials" -eq "$ambInitials") {

    "$firstName $lastName`t$samName`n" | Add-Content $outputFile

    #$account = New-Object psobject -Property @{'Name'="$firstName $lastName"; 'SamName'="$samName"}
  }
  #$outputFile += $account
}
#$outputFile | Export-Csv $outputCSVPath -NoTypeInformation
#commented out lines are the attempt to write to .csv file

Как я могу сделать (создать новый, если файл не существует), это добавить в файл с 2 столбцами.csv, где столбец 1 является first & last name и столбец 2 является samName? Если это проще, я могу вручную создать.csv и назвать столбцы самостоятельно, но я не знаю, как это сделать.

Я буквально новичок в Powershell, так что извините, если это очевидно, но я работаю над этим в течение последних 5 часов (так же, как я изучил Powershell), и мне просто нужна помощь с этим последним шагом

1 ответ

Решение

Просто замени

"$firstName $lastName\: $samName `n" | Add-Content $outputFile

с

New-Object psobject -Property @{'Name'="$firstName $lastName";
                                                             'SamName'=$samName} | 
    export-csv c:\output.csv -append -notypeinformation

Это создает пользовательский объект, который PowerShell может затем напрямую преобразовать в CSV

Также не чувствую себя плохо, это не очевидно.

Другие вопросы по тегам