Ir al contenido principal

Acción de Shell

Run an inline script directly in an automation pipeline without referencing a saved script.

Introducción

Ejecuta un script en línea como parte de una automatización, sin necesidad de tener un script guardado. Shell es la opción adecuada para comandos puntuales o lógica ligera que no necesita residir en tu biblioteca de scripts.

Para los scripts que planeas reutilizar en múltiples automatizaciones, consulta la acción Ejecutar Script en su lugar.


Configuración de la Acción de Shell

Desde la canalización de automatización en modo de edición, haz clic en + y selecciona Shell de la categoría Sistema.

Shell Action

El panel de acción se abre con los campos de configuración del script.

Shell Action Configuration

Lenguaje

Selecciona el lenguaje de scripting para este script.

Lenguajes admitidos: Ansible, Bash, Go, osquery, PowerShell, Python, Zsh.

Languages

Tiempo de espera (en segundos)

Cuánto tiempo espera Level para que el script se complete antes de marcarlo como fallido. El valor predeterminado es 100 segundos.

Ejecutar como

El contexto de cuenta bajo el que se ejecuta el script.

Opción

Comportamiento

Sistema local

Se ejecuta como la cuenta SYSTEM: elevada, sin contexto de usuario

Usuario actual

Se ejecuta como el usuario que ha iniciado sesión en ese momento: útil para operaciones en contexto de usuario como aplicar configuraciones de pantalla o establecer preferencias de usuario

Editor de script

Escribe tu script en el editor de código. Haz clic en (x) en la esquina inferior derecha del editor para insertar una variable, variable de sistema o referencia de campo personalizado en la posición del cursor.

Script Editor - Variable Picker

Al seleccionar un elemento, se inserta como {{variable_name}} en el cursor. Level resuelve el valor en tiempo de ejecución antes de que se ejecute el script.

💡 CONSEJO: Las variables del sistema, como el nombre de host del dispositivo y el apodo del dispositivo, no requieren ninguna configuración: siempre están disponibles. Las variables de automatización (enumeradas en Variables) están limitadas a la automatización actual y deben crearse primero, ya sea desde el menú Variables o mediante una acción anterior. Los campos personalizados que hayas definido en tu organización también aparecen en el selector y se resuelven al valor de ese campo del dispositivo en tiempo de ejecución.


Códigos de salida

Level utiliza el código de salida del script para determinar si la acción tuvo éxito o falló.

Código de salida

Resultado

0

Acción marcada como exitosa

Distinto de cero (p. ej. 1)

Acción marcada como fallida

La configuración de En caso de fallo de la acción en Opciones adicionales controla qué ocurre a continuación: si la canalización se detiene o continúa.

Asegúrate de que tus scripts salgan explícitamente con el código apropiado. Si un script sale con 0 tras encontrar un error que no gestionó, Level tratará la acción como exitosa.


Condiciones

La sección Condiciones te permite restringir cuándo se ejecuta esta acción en función de los atributos del dispositivo o del resultado de una acción anterior.

Consulta Condiciones de Acción para la referencia completa sobre tipos de condiciones, operadores y valores.


Opciones Adicionales

Expande Opciones adicionales para el nombre de la acción, el comportamiento ante fallos, la asignación de variables de salida, los reintentos y el interruptor de habilitación.

Consulta Descripción General de Acciones para la referencia completa sobre las opciones adicionales disponibles en cada acción.


Preguntas frecuentes

  • ¿Cuál es la diferencia entre Shell y Ejecutar Script? Shell escribe el script directamente en el panel de acción: no se guarda en tu biblioteca de scripts. Ejecutar Script ejecuta un script guardado que puede reutilizarse en múltiples automatizaciones. Usa Shell para comandos puntuales rápidos; usa Ejecutar Script cuando la misma lógica necesite mantenerse o compartirse.

  • ¿Qué ocurre si el script supera el tiempo de espera? La acción se marca como fallida. La configuración de En caso de fallo de la acción en Opciones adicionales controla si la canalización se detiene o continúa.

  • ¿Puede un script de Shell establecer una variable de automatización? Sí, de dos formas. Usa la sintaxis en línea {{variable_name=value}} en cualquier parte de la salida de tu script para establecer una variable de script; esa variable de script luego debe mapearse a una variable de automatización en el panel de acción para que esté disponible para las acciones posteriores. O usa Asignar salida de acción a variable en Opciones adicionales para capturar el stdout completo del script directamente en una variable de automatización sin ningún mapeo adicional. Consulta Establecer Variables Directamente desde Scripts para los detalles de sintaxis en línea.

  • ¿Quién puede agregar o modificar acciones de Shell? Técnicos con permiso para editar automatizaciones en el grupo correspondiente. Consulta Área de trabajo → Permisos para la configuración del control de acceso.

¿Ha quedado contestada tu pregunta?