Monday, May 19, 2014

Veel data in PowerShell? Stop het in een variabele

Even een handigheidje uit de praktijk. In Exchange of Exchange Online vraag je soms lijsten op van alle mailboxen, Public Folders of andere objecten. Afhankelijk van het aantal items en de performance van je omgeving kan het ruimte tijd duren om deze op te vragen. Als je deze data vervolgens meerdere keren wilt gebruiken om bijvoorbeeld statistieken op te vragen of een script voor te bereiden dan is het heel irritant om het commando een tweede keer uit te moeten voeren en vervolgens weer te zitten wachten.

Dan is het hand om de output direct de eerste keer in een variabele op te slaan. Vergelijk:

Get-PublicFolder \ -Recurse -ResultSize Unlimited | measure

En deze:

$pub = Get-PublicFolder \ -Recurse -ResultSize Unlimited
$pub | measure

Beide methoden geven je het aantal Public Folders in de hiƫrarchie, maar met de tweede optie kun je de $pub variabele nog een keer opvragen en de informatie sorteren, exporteren of doorvoeren naar een ander cmdlet zonder dat de Get-PublicFolder opnieuw uitgevoerd hoeft te worden. Dat scheelt tijd!

No comments: