Powershell: dynamiczna nazwa zmiennej

10-Kwi-2014

Może być tak, że pracujesz z pewną ilością danych. Za każym razem może to byc inna liczba danych umieszczonych w tabeli ze zmienną ilością kolumn.

Jeśli trzeba by policzyć sumę dla każej kolumny w tej tabeli mogłyby się przydać zmienne sum1, sum2, sum3 ….

Oczywiście warto byłoby skorzystać z tablicy, ale jeśli preferujesz zmienne, to skrypt powershell może dynamicznie generować zmienne:

for ($i=1; $i -le 10; $i++)
{
    New-Variable -Name "sum$i" -Value $i
    Get-Variable -Name "sum$i" -ValueOnly
}

Pierwsza linijka stworzy zmienną o nazwie sum1, sum2, sum3… Jest to alternatywny sposób na tworzenie nazwy zmiennej. Zazwyczaj z niej nie korzystasz, wolisz napisać po prostu $sum1 i zmienna jest zadeklarowana i $sum1=100 i zmienna ma swoją wartość. Ale w takich „dziwnych” przypadkach możesz deklarować zmienną przez New-Variable, zmieniać jej wartość przez Set-Variable oraz odczytać wartość przez Get-Variable.

I pomyśleć że na pierwszy rzut oka wydawało się że te komendy stworzył chory z przepracowania programista…

 

Dodaj komentarz:

Autor: Rafał Kraik