Variablenwerte abrufen
Variablenwerte abrufen
Beim Abrufen von Variablenwerte müssen diese stets für ein Ziel-Objekt ermittelt werden. In der Kombination von Variable und Ziel stehen dann mehrere Möglichkeiten zur Verfügung. Einerseits kann das Cmdlet Get-EmdbVariable mit dem Parameter Target verwendet werden. Die andere Möglichkeit besteht in der Verwendung der ResolveVariables()-Methode von Objekten.
Beispiele:
Hinweis: Voraussetzung für die Beispiele ist ein verbundenes PowerShell-Laufwerk. |
Mit Hilfe des Get-EmdbVariable Cmdlets werden im folgenden Beispiel die Werte aller gesetzten Variablen für den Computer XP01 ermittelt. Dabei ist das Ergebnis selbst wieder eine Objekt-Collection, die aber eine Eigenschaft Value haben
$MyComputer = Get-EmdbComputer "emdb:\rootDSE\Managed Users & Computers\solys.local\Chicago\ITService\Workstations\XP01" Get-EmdbVariable -Target $MyComputer |
Um nur eine Variable aufzulösen, kann der Name der Variable angegeben werden:
Get-EmdbVariable "InternalID" -Target $MyComputer |
Um nun den wirklichen Wert einer Variablen für ein bestimmten Ziel in einer PowerShell-Variablen zu speichern, kann daher der folgende Code benutzt werden:
$MyValue = (Get-EmdbVariable "InternalID" -Target $MyComputer).Value |
Wie bereits beschrieben, kann alternativ auch die ResolveVariables()-Methode verwendet werden, was dasselbe Ergebnis liefert, wie das erste Beispiel oben.
$MyComputer.ResolveVariables() |
Hinweis: Wenn Sie den Wert von Variablen vom Typ "EncryptedString" über die PowerShell Extensions abrufen, erhalten Sie nur den verschlüsselten Wert. Dieser kann nur durch den BLS oder durch NetInstall-Clientkomponenten entschlüsselt und entsprechend verwendet werden. |