Экспорт массива (таблицы) из Powershell в csv
При работе с массивами данных в Powershell бывает необходимо выгрузить данные в таблицу, чтобы потом открыть ее в Excel. Напрямую программировать выгрузку массива в файл Excel не рекомендуется, т.к. для этого необходимо хотя бы иметь установленный Excel на машине, где запускается скрипт. Кроме того, такой код будет работать достаточно медленно. Лучше всего выгружать массив в csv-файл.
Как это делается?
Для начала, надо определить специальный массив:
Как это делается?
Для начала, надо определить специальный массив:
$export_array = @();
Далее набиваем его данными:
$export_array += ,@(""); # это просто пустая строка $export_array += ,@($a1, $b1, $c1); $export_array += ,@($a2, $b2, $c2); $export_array += ,@($a3, $b3, $c3);
Формируем путь и имя к csv-файлу:
$datetime = Get-Date -Format "yyyy.MM.dd_HH-mm-ss"; $file_name = "audit_result_" + $datetime + ".csv"; $file_path = "./" + $file_name;
Непосредственно выгружаем массив в файл:
foreach($item1 in $export_array) { $csv_string = ""; foreach($item in $item1) { $csv_string = $csv_string + $item + ";"; } Add-Content $file_path $csv_string; }
- Просмотров: 12827