Zum Hauptinhalt springen

Shell-Aktion

Führen Sie ein Inline-Skript direkt in einer Automatisierungs-Pipeline aus, ohne auf ein gespeichertes Skript zu verweisen.

In der letzten Stunde aktualisiert

Führen Sie ein Skript inline als Teil einer Automatisierung aus — kein gespeichertes Skript erforderlich. Shell ist die richtige Wahl für einmalige Befehle oder einfache Logik, die nicht in Ihrer Skriptbibliothek gespeichert werden muss.

Für Skripte, die Sie in mehreren Automatisierungen wiederverwenden möchten, siehe stattdessen die Aktion Skript ausführen.


Konfigurieren der Shell-Aktion

Klicken Sie in der Automatisierungs-Pipeline im Bearbeitungsmodus auf + und wählen Sie Shell aus der Kategorie System.

Shell-Aktion

Das Aktionsfenster wird mit den Skriptkonfigurationsfeldern geöffnet.

Shell-Aktion-Konfiguration

Sprache

Wählen Sie die Skriptsprache für dieses Skript.

Unterstützte Sprachen: Ansible, Bash, Go, osquery, PowerShell, Python, Zsh.

Sprachen

Timeout (in Sekunden)

Wie lange Level wartet, bis das Skript abgeschlossen ist, bevor es als fehlgeschlagen markiert wird. Der Standardwert ist 100 Sekunden.

Ausführen als

Der Kontokontext, unter dem das Skript ausgeführt wird.

Option

Verhalten

Lokales System

Wird als SYSTEM-Konto ausgeführt — erhöht, kein Benutzerkontext

Aktueller Benutzer

Wird als aktuell angemeldeter Benutzer ausgeführt — nützlich für Operationen im Benutzerkontext wie das Anwenden von Anzeigeeinstellungen oder das Konfigurieren von Benutzereinstellungen

Skript-Editor

Schreiben Sie Ihr Skript im Code-Editor. Klicken Sie auf (x) in der unteren rechten Ecke des Editors, um eine Variable, eine Systemvariable oder einen benutzerdefinierten Feldbezug an der Cursorposition einzufügen.

Skript-Editor - Variablenauswahlform

Die Auswahl eines Elements fügt es als ##{{variable_name}} an der Cursorposition ein. Level löst den Wert zur Laufzeit auf, bevor das Skript ausgeführt wird.

💡 TIPP: Systemvariablen wie Device-Hostname und Device-Spitzname erfordern keine Einrichtung — sie sind immer verfügbar. Automatisierungsvariablen (unter Variablen aufgeführt) sind auf die aktuelle Automatisierung begrenzt und müssen zuerst erstellt werden, entweder aus dem Menü Variablen der Automatisierung oder durch eine vorherige Aktion. Benutzerdefinierte Felder, die Sie in Ihrer Organisation definiert haben, werden auch in der Auswahl angezeigt und werden zur Laufzeit auf den Feldwert dieses Geräts aufgelöst.


Exit-Codes

Level verwendet den Exit-Code des Skripts, um zu bestimmen, ob die Aktion erfolgreich war oder fehlgeschlagen ist.

Exit-Code

Ergebnis

0

Aktion als erfolgreich markiert

Non-Zero (z. B. 1)

Aktion als fehlgeschlagen markiert

Ihre Einstellung Bei Aktionsfehler in Zusätzliche Optionen steuert, was als Nächstes geschieht — ob die Pipeline angehalten oder fortgesetzt wird.

Stellen Sie sicher, dass Ihre Skripte explizit mit dem entsprechenden Code beendet werden. Wenn ein Skript mit Code 0 beendet wird, nachdem es auf einen Fehler gestoßen ist, den es nicht behoben hat, behandelt Level die Aktion als erfolgreich.


Bedingungen

Im Abschnitt Bedingungen können Sie einschränken, wann diese Aktion ausgeführt wird, basierend auf Geräteattributen oder dem Ergebnis einer vorherigen Aktion.

Siehe Aktionsbedingungen für die vollständige Referenz zu Bedingungstypen, Operatoren und Werten.


Zusätzliche Optionen

Erweitern Sie Zusätzliche Optionen für Aktionsnamen, Fehlerverhalten, Ausgabevariablenzuweisung, Wiederholungen und den Aktivierungsschalter.

Siehe Aktionsübersicht für die vollständige Referenz zu zusätzlichen Optionen, die für jede Aktion verfügbar sind.


Häufig gestellte Fragen

  • Was ist der Unterschied zwischen Shell und Skript ausführen? Shell schreibt das Skript direkt im Aktionsfenster — es wird nicht in Ihrer Skriptbibliothek gespeichert. Skript ausführen führt ein gespeichertes Skript aus, das in mehreren Automatisierungen wiederverwendet werden kann. Verwenden Sie Shell für schnelle einmalige Befehle; verwenden Sie Skript ausführen, wenn die gleiche Logik beibehalten oder gemeinsam genutzt werden muss.

  • Was passiert, wenn das Skript abläuft? Die Aktion wird als fehlgeschlagen markiert. Die Einstellung Bei Aktionsfehler in Zusätzliche Optionen steuert, ob die Pipeline angehalten oder fortgesetzt wird.

  • Kann ein Shell-Skript eine Automatisierungsvariable setzen? Ja — auf zwei Arten. Verwenden Sie die Inline-Syntax ##{{variable_name=value}} irgendwo in Ihrer Skriptausgabe, um eine Skriptvariable zu setzen; diese Skriptvariable muss dann einer Automatisierungsvariablen im Aktionsfenster zugeordnet werden, um für nachfolgende Aktionen verfügbar zu sein. Oder verwenden Sie Aktionsausgabe einer Variablen zuweisen in Zusätzliche Optionen, um das gesamte Stdout des Skripts direkt in einer Automatisierungsvariablen zu erfassen, ohne zusätzliche Zuordnung. Siehe Variablen direkt aus Skripten setzen für Details zur Inline-Syntax.

  • Wer kann Shell-Aktionen hinzufügen oder ändern? Techniker mit der Berechtigung, Automatisierungen in der relevanten Gruppe zu bearbeiten. Siehe Arbeitsbereich → Berechtigungen für die Zugriffssteuerungskonfiguration.

Hat dies deine Frage beantwortet?