Passer au contenu principal

Action Shell

Exécuter un script en ligne directement dans un pipeline d'automatisation sans faire référence à un script enregistré.

Mis à jour il y a moins d’une heure

Exécutez un script en ligne dans le cadre d'une automatisation — aucun script enregistré requis. Shell est le bon choix pour les commandes ponctuelles ou la logique légère qui n'a pas besoin de vivre dans votre bibliothèque de scripts.

Pour les scripts que vous prévoyez de réutiliser dans plusieurs automatisations, consultez plutôt l'action Exécuter un script.


Configuration de l'action Shell

À partir du pipeline d'automatisation en mode édition, cliquez sur + et sélectionnez Shell dans la catégorie Système.

Action Shell

Le panneau d'action s'ouvre avec les champs de configuration du script.

Configuration de l'action Shell

Langue

Sélectionnez la langue de script pour ce script.

Langues supportées : Ansible, Bash, Go, osquery, PowerShell, Python, Zsh.

Langues

Délai d'attente (en secondes)

Combien de temps Level attend que le script soit terminé avant de le marquer comme échoué. Le délai par défaut est de 100 secondes.

Exécuter en tant que

Le contexte de compte dans lequel le script s'exécute.

Option

Comportement

Système local

S'exécute en tant que compte SYSTEM — élevé, sans contexte utilisateur

Utilisateur actuel

S'exécute en tant qu'utilisateur actuellement connecté — utile pour les opérations du contexte utilisateur comme appliquer les paramètres d'affichage ou configurer les préférences utilisateur

Éditeur de script

Écrivez votre script dans l'éditeur de code. Cliquez sur (x) dans le coin inférieur droit de l'éditeur pour insérer une variable, une variable système ou une référence de champ personnalisé à la position du curseur.

Éditeur de script - Sélecteur de variables

La sélection d'un élément l'insère en tant que ##{{variable_name}} à la position du curseur. Level résout la valeur au moment de l'exécution avant que le script ne s'exécute.

💡 CONSEIL : Les variables système comme le nom d'hôte du device et le surnom du device ne nécessitent aucune configuration — elles sont toujours disponibles. Les variables d'automatisation (énumérées sous Variables) sont limitées à l'automatisation actuelle et doivent d'abord être créées, soit à partir du menu Variables de l'automatisation, soit par une action précédente. Les champs personnalisés que vous avez définis dans votre organisation apparaissent également dans le sélecteur et se résolvent à la valeur du champ de ce device au moment de l'exécution.


Codes de sortie

Level utilise le code de sortie du script pour déterminer si l'action a réussi ou échoué.

Code de sortie

Résultat

0

Action marquée comme réussie

Non-zéro (par exemple 1)

Action marquée comme échouée

Votre paramètre En cas d'échec de l'action dans Options supplémentaires contrôle ce qui se passe ensuite — que le pipeline s'arrête ou continue.

Assurez-vous que vos scripts se terminent explicitement avec le code approprié. Si un script se termine avec un code 0 après avoir rencontré une erreur qu'il n'a pas gérée, Level traitera l'action comme réussie.


Conditions

La section Conditions vous permet de restreindre l'exécution de cette action en fonction des attributs de l'appareil ou du résultat d'une action précédente.

Voir Conditions d'action pour la référence complète sur les types de conditions, les opérateurs et les valeurs.


Options supplémentaires

Développez Options supplémentaires pour le nom de l'action, le comportement en cas d'échec, l'affectation de variables de sortie, les tentatives et le bouton d'activation.

Voir Aperçu des actions pour la référence complète sur les options supplémentaires disponibles sur chaque action.


FAQ

  • Quelle est la différence entre Shell et Exécuter un script ? Shell écrit le script directement dans le panneau d'action — il n'est pas enregistré dans votre bibliothèque de scripts. Exécuter un script exécute un script enregistré qui peut être réutilisé dans les automatisations. Utilisez Shell pour les commandes ponctuelles rapides ; utilisez Exécuter un script lorsque la même logique doit être maintenue ou partagée.

  • Que se passe-t-il si le script expire ? L'action est marquée comme échouée. Le paramètre En cas d'échec de l'action dans Options supplémentaires contrôle si le pipeline s'arrête ou continue.

  • Un script Shell peut-il définir une variable d'automatisation ? Oui — de deux façons. Utilisez la syntaxe en ligne ##{{variable_name=value}} n'importe où dans votre sortie de script pour définir une variable de script ; cette variable de script doit ensuite être mappée à une variable d'automatisation dans le panneau d'action pour être disponible pour les actions ultérieures. Ou utilisez Affecter la sortie de l'action à une variable dans Options supplémentaires pour capturer le stdout complet du script directement dans une variable d'automatisation sans aucun mappage supplémentaire. Voir Définir les variables directement à partir de scripts pour les détails de la syntaxe en ligne.

  • Qui peut ajouter ou modifier des actions Shell ? Les techniciens ayant la permission de modifier les automatisations dans le groupe pertinent. Voir Espace de travail → Autorisations pour la configuration du contrôle d'accès.

Avez-vous trouvé la réponse à votre question ?