Сохраните вывод команд и напишите все в конце скрипта - PullRequest
0 голосов
/ 19 февраля 2012

В настоящее время я пишу новую строку в CSV-файл каждый раз, когда я успешно / неудачно выполняю команду в своем скрипте с помощью команды export-csv. Полученный файл является лог-файлом.

Я хотел бы сохранить весь этот вывод в какую-то переменную и записать все это за один раз в конце скрипта. Это звучит гораздо эффективнее и умнее, так как я сейчас открываю / пишу / закрываю свой csv регистрировать сотни раз при каждом запуске ..

Но как мне это сделать? Любая помощь очень ценится как всегда !!

1 Ответ

1 голос
/ 19 февраля 2012

Кажется, достаточно просто. Просто создайте пустой массив для хранения строк журнала перед началом работы:

$log = @()

Затем вместо добавления в CSV-файл добавьте в массив:

$log += "whatever your log entry looks like"

Если вы делаете это целую кучу раз, arraylist может быть лучше, чем массив:

$log = new-object collections.arraylist

, то:

$log.add("whatever your log entry looks like")

Затем в конце (для любого из них):

$log | add-content <path to csv file>
...