Экспорт данных, которые появляются в терминале в файл CSV - PullRequest
0 голосов
/ 30 октября 2019

Я получаю данные для вывода в терминале из файла json. У меня возникли некоторые трудности с экспортом в CSV-файл.

У меня есть несколько условных выражений в коде для вывода необходимой мне информации. Я получаю правильный вывод в терминале. Как вы можете видеть, у меня есть поля имени, типа и значения, выводимые ниже.

apiConfig:orderCommandUrl, String, http://dev.order-service.digital 
apiConfig:orderCommandUrl, String, http://qa.order-service.digital

Теперь мне нужно экспортировать эти данные в CSV-файл, и я попробовал следующее:

$variableData | Export-Csv -NoTypeInformation C:\Users\Temp\Environments.csv

$jsonVariables = Get-Content C:\Users\QVL6\Downloads\express-ordering-web-variables.json | ConvertFrom-Json #| Select -Expand Variables

foreach ($fileEnvironment in $jsonVariables.ScopeValues.Environments) {
    $variableData = $null

    foreach ($fileVariable in $jsonVariables.Variables) {
        if($fileVariable.Scope -ne $null -and $fileVariable.Scope.Environment -ne $null) {
            if($fileEnvironment.Id -eq $fileVariable.Scope.Environment[0]) {
                $variableData += "$($fileVariable.Name), $($fileVariable.Type), $($fileVariable.Description)`n"
            }
         }
    }
        Write-Host $variableData
        $variableData | Export-Csv -NoTypeInformation  C:\Users\QVL6\Environments.csv 
}

Я хочу, чтобы данные отображались в CSV-файле со следующими заголовками Имя, Тип и Описание

1 Ответ

0 голосов
/ 30 октября 2019

Если $variableData содержит массив строковых значений, разделенных запятыми, вы можете сделать следующее:

$variableData | ConvertFrom-Csv -Header Name,Type,Description |
    Export-Csv -NoTypeInformation  C:\Users\QVL6\Environments.csv

Основная проблема не связана с объектами со свойствами, которые содержат целевые значения. Используя ConvertFrom-Csv, вы можете добавлять заголовки, которые становятся этими свойствами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...