У меня есть некоторый псевдо-код, аналогичного приведенные нижеимеет множество функций, добавить в том же переменный массиве
$funcValues = @(New-Object -TypeName psobject -Property @{'Function' = ''; 'Value' = '';})
function func1(){
while($i -lt 5){
$funcValues += @(New-Object -TypeName psobject -Property @{'Function' = 'func1'; 'Value' = $i;})
$i++
}
}
function func2(){
while($i -lt 3){
$funcValues += @(New-Object -TypeName psobject -Property @{'Function' = 'func2'; 'Value' = $i;})
$i++
}
}
func1
func2
$funcValues | Export-CSV C:\path\results.csv -noType
Цель является иметь обе функции добавить в массив и после вызова функции экспорта массива в формат CSV. Однако, когда этот код находится внутри функции, он ничего не пишет в массив, но если код находится вне функции, он работает.
Я предполагаю, что это связано с переменным охватом, но я очень незнакомо с тем, как работает область действия в powershell.
Я не уверен, что создание массива массивов - это то, что я хочу сделать. Я могу сказать, что добавление '$ script:' перед тем, как переменная работала отлично! Огромное спасибо. Я буду изучать, как я добавляю ценности в будущее – mhopkins321