Memorizza l'output dai comandi e scrivi tutto alla fine dello script
-
27-10-2019 - |
Domanda
Attualmente sto scrivendo una nuova riga in un file CSV ogni volta che eseguo correttamente/senza successo un comando nel mio script con il comando Export-CSV. Il file risultante è un file di log.
Vorrei archiviare tutto questo output in una sorta di variabile e scrivere tutto in una volta alla fine della sceneggia tempo su ogni corsa ..
Ma come lo farei? Qualsiasi aiuto è molto apprezzato come sempre !!
Soluzione
Sembra abbastanza facile. Basta creare un array vuoto per tenere le righe di registro prima di iniziare:
$log = @()
Quindi invece di aggiungere al file CSV, aggiungere all'array:
$log += "whatever your log entry looks like"
Se lo stai facendo un sacco di volte, un arraylist potrebbe essere migliore di un array:
$log = new-object collections.arraylist
poi:
$log.add("whatever your log entry looks like")
Quindi alla fine (per uno dei due):
$log | add-content <path to csv file>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow