Вывод 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
Также не чувствую себя плохо, это не очевидно.