Dynamische Token

Sie können dynamische Token in allen Workspace Environment Management-Aktionen verwenden, um sie leistungsfähiger zu machen.

Sie können dynamische Token in den folgenden Feldern verwenden:

  • Anwendungen
    • Mit Installationsanwendung als Anwendungstyp: Befehlszeile, Arbeitsverzeichnis und Parameter
    • Mit Datei/Ordner als Anwendungstyp: Ziel
    • Mit URL als Anwendungstyp: Shortcut URL
    • Symboldatei
  • Drucker
    • Zielpfad
  • Netzlaufwerke
    • Zielpfad und Anzeigename
  • Virtuelle Laufwerke
    • Zielpfad
  • Registrierungseinträge
    • Zielpfad, Zielname und Zielwert

    Hinweis:

    Das Feld Zielwert unterstützt keine Erweiterung von Umgebungsvariablen. Wenn Sie Umgebungsvariablen verwenden, funktionieren sie nicht wie erwartet.

  • Umgebungsvariablen
    • Wert der Variablen
  • Ports
    • Port Target
  • INI-Dateien
    • Zielpfad, Zielabschnitt, Zielwertname und Zielwert

    Hinweis:

    Die Felder Zielabschnitt, Zielwertname und Zielwert unterstützen keine Erweiterung der Umgebungsvariablen. Wenn Sie Umgebungsvariablen verwenden, funktionieren sie nicht wie erwartet.

  • Externe Aufgaben
    • Pfad und Argumente
  • Dateisystemvorgänge
    • Quellpfad und Zielpfad
  • Bestimmte Filterbedingungen
    • Beispiel: Mit Active Directory-Attributübereinstimmung als Bedingungstyp: Getestetes Active Directory-Attribut und Abgleichsergebnis

    Hinweis:

    Eine vollständige Liste der unterstützten Felder für Filterbedingungen finden Sie in der Unterstützungsmatrix für Filterbedingungen.

Zeichenfolgenoperationen

Manchmal müssen Sie Strings innerhalb eines Skripts manipulieren, um Laufwerke zuzuordnen oder Anwendungen zu starten. Die folgenden Zeichenfolgenvorgänge werden vom Workspace Environment Management-Agent akzeptiert:

Modal Beschreibung Beispiel
#Left(string,length)# Gibt die angegebene Anzahl von Zeichen auf der linken Seite zurück. #Left(abcdef,2)# gibt ab zurück
#Right(string,length)# Gibt die angegebene Anzahl von Zeichen auf der rechten Seite zurück. #Right(abcdef,2)# gibt ef zurück
#Truncate(string,length)# Wenn die Länge der Zeichenfolge kleiner oder gleich der angegebenen Länge ist, wird die gesamte Zeichenfolge zurückgegeben. Wenn die Länge der Zeichenfolge größer als die angegebene Länge ist, wird die angegebene Anzahl von Zeichen auf der linken Seite zurückgegeben. #Truncate(abcdef,3)# gibt abc zurück
&Trim(string)& Entfernt alle führenden und nachfolgenden Leerzeichen der Zeichenfolge. &Trim( a b c )& gibt a b c zurück
&RemoveSpaces(string)& Entfernt alle Leerzeichen der Zeichenfolge. &RemoveSpaces( a b c )& gibt abc zurück
&Expand(string)& Wenn die Zeichenfolge eine Umgebungsvariable enthält, die in% eingeschlossen ist, wird die Variable erweitert. &Expand(%userprofile%\destop)& gibt C:\Users\Jill\desktop zurück
$Split(string,[splitter],index)$ Teilt die Zeichenfolge basierend auf dem in [] eingeschlossenen Splitter in Teilzeichenketten auf und gibt die indizierte Teilzeichenfolge zurück. $Split(abc-def-hij,[-],2)$ gibt hij zurück
#Mid(string,startindex)# Beginnt am angegebenen Index in der Zeichenfolge und gibt alle Zeichen danach zurück. #Mid(abcdef,2)# gibt cdef zurück
!Mid(string,startindex,length)! Beginnt am angegebenen Index in der Zeichenfolge und gibt die angegebene Anzahl von Zeichen zurück. !Mid(abcdef,1,2)! gibt bc zurück
! Teilzeichenfolge (Zeichenfolge, Startindex, Länge)! Beginnt am angegebenen Index in der Zeichenfolge und gibt die angegebene Anzahl von Zeichen zurück. !Substring(abcdef,1,2)! gibt bc zurück
#Mod(string,length)# Dividiert die Zeichenfolge durch die Länge und gibt den Rest zurück. Die Zeichenfolge muss in eine Ganzzahl umgewandelt werden können. #Mod(7,3)# gibt 1 zurück

Hinweis:

  • String-Operationen werden auch mit Hashtags und Active Directory-Attributen unterstützt. Beispiel: #Left([ADAttribute:NAME],2)# wobei das Namensattribut des aktuellen Domänenbenutzers Administrator ist und Ad zurück gibt und $Split(##ClientIPAddress##,[\.],2)$ den Wert 157 zurück gibt.
  • Die Operationen !Mid(string,startindex,length)! und !Substring(string,startindex,length)! werden immer zuletzt ausgeführt.

Hashtags

Hash-Tags sind eine Ersatzfunktion, die häufig bei der Verarbeitung von Workspace Environment Management Elementen verwendet wird. Das folgende Beispiel veranschaulicht, wie Sie Hash-Tags verwenden:

Um in eine INI-Datei zu schreiben, können Sie %UserName% im Pfad der INI-Datei verwenden und Workspace Environment Management verarbeitet sie und erweitert das endgültige Verzeichnis. Es ist jedoch komplizierter, den Wert zu bewerten, den Workspace Environment Management in die .ini selbst schreibt: Möglicherweise möchten Sie %UserName% wörtlich schreiben oder den erweiterten Wert schreiben.

Um die Flexibilität zu erhöhen, existiert ##UserName## als Hash-Tag, sodass %UserName% für einen Wert ihn wörtlich schreibt und ##UserName## den erweiterten Wert schreibt.

Beispiele finden Sie in der folgenden Tabelle:

Modal Beschreibung Beispiel
##UserName## Gibt die erweiterte Umgebungsvariable “%username%” zurück Jill
##UserProfile## Gibt die erweiterte Umgebungsvariable “%userprofile%” zurück C:\Users\Jill
##FullUserName## Gibt den vollständigen Namen des Benutzers in Active Directory zurück Jill Chou
##UserInitials## Gibt die Initialen des Benutzernamens in Active Directory zurück JC
##UserAppData## Gibt den tatsächlichen Pfad des Spezialordners zurück - RoamingAppData C:\Users\Jill\AppData\Roaming
##UserPersonal## Gibt den tatsächlichen Pfad des Spezialordners zurück - Dokumente C:\Users\Jill\Documents
##UserDocuments## Gibt den tatsächlichen Pfad des Spezialordners zurück - Dokumente C:\Users\Jill\Documents
##UserDesktop## Gibt den tatsächlichen Pfad des speziellen Ordners zurück - Desktop C:\Users\Jill\Desktop
##UserFavorites## Gibt den tatsächlichen Pfad des Spezialordners zurück - Favoriten C:\Users\Jill\Favorites
##UserTemplates## Gibt den tatsächlichen Pfad des Spezialordners zurück - Templates C:\Users\Jill\AppData\Roaming\Microsoft\Windows\Templates
##UserStartMenu## Gibt den tatsächlichen Pfad des Spezialordners zurück - StartMenu C:\Users\Jill\AppData\Roaming\Microsoft\Windows\Start Menü
##UserStartMenuPrograms## Gibt den tatsächlichen Pfad des Spezialordners zurück - Programme C:\Users\Jill\AppData\Roaming\Microsoft\Windows\Start Menu\ Programs
#UserLocalAppData ## Gibt den tatsächlichen Pfad des Spezialordners zurück - LocalAppData C:\Users\Jill\AppData\Local
#UserMusic ## Gibt den tatsächlichen Pfad des Spezialordners zurück - Musik C:\Users\Jill\Music
#UserPictures ## Gibt den tatsächlichen Pfad des Spezialordners zurück - Bilder C:\Users\Jill\Pictures
#UserVideos ## Gibt den tatsächlichen Pfad des Spezialordners zurück - Videos C:\Users\Jill\Videos
#UserDownloads ## Gibt den tatsächlichen Pfad des speziellen Ordners zurück - Downloads C:\Users\Jill\Downloads
#UserLinks ## Gibt den tatsächlichen Pfad des Spezialordners zurück - Links C:\Users\Jill\Links
#UserContacts ## Gibt den tatsächlichen Pfad des speziellen Ordners zurück - Kontakte C:\Users\Jill\Contacts
#UserSearches ## Gibt den tatsächlichen Pfad des Spezialordners zurück - SavedSearches C:\Users\Jill\Searches
#commonprograms ## Gibt den tatsächlichen Pfad des Spezialordners zurück - CommonPrograms C:\ProgramData\Microsoft\Windows\Start Menu\ Programs
##ComputerName## Gibt den Namen der Maschine zurück WIN10EN-LR3B66L
##ClientName## Gibt den Namen des Client-Computers zurück W2K16ST-5IS28JP
##ClientIPAddress## Gibt die IP-Adresse des Client-Computers zurück 10.150.153.138
#IpAddress ## Gibt die IP-Adresse des Geräts zurück 10.150.153.213
##ADSite## Gibt den Active Directory-Standort zurück, zu dem die Maschine gehört NKG
##DefaultRegValue## - Immer String.Empty
##UserLDAPPath## Gibt den eindeutigen Namen des aktuellen Benutzers zurück CN=Jill Chou,OU=User Accounts,OU=APAC,DC=citrite,DC=net
##VUEMAgentFolder## Gibt den Agentordner zurück C:\Program Files (x86)\Citrix\Workspace Environment Management Agent
##RDSSessionID## Gibt die Remote-Desktopsitzungs-ID zurück 2
##RDSSessionName## Gibt den Namen der Remote-Desktopsitzung zurück RDP-Tcp#72
##ClientRemoteOS## Gibt das Betriebssystem der Maschine zurück, die für die Verbindung mit dem virtuellen Desktop verwendet wurde Windows
##ClientOSInfos## Gibt die Betriebssysteminformationen des Geräts zurück Windows 10 Enterprise 64 Bit

Der Hash-Tag ##UserScreenCaptureComment## ist für die Verwendung in bestimmten Teilen des Produkts implementiert. Dieses Tag kann in die E-Mail-Vorlage unter Erweiterte Einstellungen > Personalisierung des UI-Agent > Helpdesk-Optionenaufgenommen werden. Wenn dies eingeschlossen ist, wird Benutzern ein Kommentarfeld unter der Bildschirmaufnahme im Dienstprogramm zur Bildschirmaufzeichnung des Agents angezeigt. Der Kommentar ist in der Support-E-Mail an dem Ort enthalten, an dem Sie das Tag in die E-Mail-Vorlage platziert haben.

Active Directory-Attribute

Um mit Active Directory-Attributen zu arbeiten, ersetzt WEM den Wert [ADAttribute:attrName] durch das zugehörige Active Directory-Attribut. [ADAttribute:attrName] ist das dynamische Token für alle Active Directory-Attribute. Es gibt einen verwandten Filter, der den Wert der angegebenen Attribute überprüft.

Bei Strukturen von Benutzer-Organisationseinheiten (OU) ersetzt WEM den Wert [UserParentOU:level] durch den zugehörigen Active Directory-Organisationseinheitennamen. Der Active Directory-Pfad ist der vollständige Benutzerpfad (LDAP) in Active Directory und [UserParentOU:level] ist eine Teilmenge davon.

Angenommen, Sie möchten ein Netzlaufwerk für eine Organisationseinheit erstellen, zu der die Benutzer gehören. Sie können das dynamische Token [UserParentOU:Level] im Netzwerklaufwerkspfad verwenden, um die Organisationseinheit des Benutzers dynamisch aufzulösen. Es gibt zwei Möglichkeiten, den dynamischen Token zu verwenden:

  • Verwenden Sie das dynamische Token [UserParentOU:level] direkt im Netzlaufwerkpfad. Sie können beispielsweise den folgenden Pfad verwenden: \\Server\Share\[UserParentOU:0]\.
  • Legen Sie eine Umgebungsvariable mit dem Namen OU fest, und legen Sie dann ihren Wert auf [UserParentOU:0] fest. Sie können das Laufwerk dann als \\Server\Share\%OU%\ zuordnen.

Hinweis:

  • Sie können die Ziffer “0” durch die Zahl ersetzen, die der Ebene entspricht, die Sie in der OU-Struktur erreichen möchten.
  • Sie können Variablen an den Pfad anhängen. Stellen Sie dazu sicher, dass Sie über eine genaue Ordnerstruktur verfügen, die Ihrem Organisationslayout entspricht.

Sie können Active Directory-Attribute auch für Filterzwecke verwenden. Auf der Registerkarte Administration > Filter > Bedingungen > Filterbedingungsliste können Sie das Fenster “Neue Filterbedingung” öffnen, nachdem Sie auf Hinzufügen geklickt haben. Im Fenster “Neue Filterbedingung” werden die folgenden vier Filterbedingungstypen angezeigt, die mit Active Directory-Attributen verknüpft sind:

  • Active Directory-Attributübereinstimmung
  • Active Directory-Gruppenabgleich
  • Active Directory-Pfadübereinstimmung
  • Active Directory-Standortübereinstimmung

Für die Active Directory-Attributübereinstimmung ist das dynamische Token [ADAttribute:attrName]. Es ist kein dynamischer Token für Active Directory-Gruppenübereinstimmung verfügbar, da dieser Bedingungstyp verwendet wird, um eine Gruppenmitgliedschaft zu überprüfen. Für Active Directory-Pfad Match lautet der dynamische Token für den vollständigen LDAP-Pfad ##UserLDAPPath##. Bei Active Directory-Standortübereinstimmung ist der dynamische Token ##ADSite##.

Beispiele finden Sie in der folgenden Tabelle:

Modal Beschreibung Beispiel
[ADAttribute:attrName] Gibt das angegebene Attribut des Domänenbenutzers zurück [ADAttribute:name] gibt Administrator zurück
[PrinterAttribute:printername|attrName] Gibt das angegebene Attribut des angegebenen Domänendruckers zurück [PrinterAttribute:printer1|name] gibt Drucker1 zurück
[UserParentOU: level] Gibt die angegebene Ebene der übergeordneten Organisationseinheit des aktuellen Benutzers zurück [UserParentOU:1] in CN=Jill Chou,OU=User Accounts,OU=APAC,DC=citrite,DC=net gibt APAC zurück

Registrierungseinträge

Um mit einer Registrierung zu arbeiten, ersetzt WEM den Wert [RegistryValue:<Registry path>] durch den zugehörigen Registrierungswert. Sie können beispielsweise den folgenden Wert angeben:

  • [RegistryValue:HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ Control\ Norskale\ Agent Host\ AgentLocation]

XML-Dateien

Um mit einer XML-Datei zu arbeiten, ersetzt WEM den Wert [GetXmlValue:<XML path>|<tag name>] durch den spezifischen Tag-Wert in der XML-Datei. Der XML-Pfad kann ein tatsächlicher Pfad oder eine Umgebungsvariable sein, die in einen Pfad aufgelöst wird. Sie müssen die Umgebungsvariable mit % einschließen. Sie können beispielsweise den folgenden Wert angeben:

  • [GetXmlValue:C:\citrix\test.xml|summary] oder
  • [GetXmlValue:%xmlpath%|summary]

INI-Dateien

Um mit einer INI-Datei zu arbeiten, ersetzt WEM [GetIniValue:<INI path>|<section name in the .ini file>|<key name in the .ini.file>] durch den Schlüsselwert. Der INI-Pfad kann ein tatsächlicher Pfad oder eine Umgebungsvariable sein, die in einen Pfad aufgelöst wird. Sie müssen die Umgebungsvariable mit % einschließen. Sie können beispielsweise den folgenden Wert angeben:

  • [GetIniValue:C:\citrix\test.ini|PLD_POOL_LIC_NODE_0_0|LicExpTime] oder
  • [GetIniValue:%inipath%|PLD_POOL_LIC_NODE_0_0|LicExpTime]

Weitere Informationen

Unterstützungsmatrix für Filterbedingungen

In der folgenden Tabelle sind alle Bedingungstypen aufgeführt, deren getesteter Wert oder Vergleichsergebnis dynamische Token unterstützt.

Typ der Bedingung Geprüfter Wert Passendes Ergebnis
ComputerName Match - Ja
ClientName Match - Ja
Übereinstimmung mit Umgebungsvariablen Nein Ja
Übereinstimmung mit dem Registrierungswert Ja Ja
WMI-Abfrageergebnis abgleichen - Ja
Übereinstimmung mit dem Namen der XenApp-Farm - Ja
Übereinstimmung mit dem Namen der XenApp-Zone - Ja
Übereinstimmung mit dem Namen der XenDesktop-Farm - Ja
Übereinstimmung mit dem Namen der XenDesktop-Desktop-Gruppe - Ja
Active Directory-Attributübereinstimmung Ja Ja
Name oder Wert ist in der Liste Ja Ja
Keine ComputerName-Übereinstimmung - Ja
Keine Übereinstimmung mit ClientName - Ja
Keine Übereinstimmung mit Umgebungsvariablen Nein Ja
Keine Übereinstimmung mit dem Registrierungswert Ja Ja
Keine WMI-Abfrageergebnis übereinstimmen - Ja
Keine Übereinstimmung mit dem Namen der XenApp-Farm - Ja
Keine Übereinstimmung mit dem Namen der XenApp-Zone - Ja
Keine Übereinstimmung mit dem Namen der XenDesktop-Farm - Ja
Keine Übereinstimmung mit dem Gruppennamen des XenDesktop-Desktops - Ja
Keine Übereinstimmung mit Active Directory-Attribute Ja Ja
Name oder Wert ist nicht in Liste Ja Ja
Dynamische Werteübereinstimmung Ja Ja
Keine dynamische Werteübereinstimmung Ja Ja
Übereinstimmung mit der Dateiversion Ja Ja
Keine Übereinstimmung mit der Dateiversion Ja Ja
Name der veröffentlichten Ressource - Ja
Name ist in der Liste Ja Ja
Name ist nicht in der Liste Ja Ja
Datei/Ordner existiert - Ja
Datei/Ordner existiert nicht - Ja
Dynamische Token