¿Ya eres cliente de NinjaOne? Inicia sesión para ver más guías y las últimas actualizaciones.

Tipos de variables de script

Tema

Este artículo ofrece una explicación de las variables de script y orientación sobre cómo utilizarlas.

Entorno

Automatización y scripting de NinjaOne

Descripción

Seleccione una opción para obtener más información:

¿Qué son los tipos de variables?

Al crear scripts en la biblioteca de automatización, tiene la opción de añadir varios tipos de variables de script que afectan al formulario interactivo que aparece cuando se ejecuta un script. Las variables son compatibles con Batch, PowerShell, ShellScript y VBScript.

Consulte la tabla siguiente para obtener una breve explicación de cada tipo de variable.

Tipo de variableDescripción
Cadena/TextoSe utiliza para cualquier cosa que necesite letras, números y/o caracteres como combinación. Algunos ejemplos son nombres de usuario, URL y frases.
Nota importante: No se pueden utilizar los siguientes caracteres especiales: Å Ä Ö &|;$><`!
EnteroSe utiliza para cualquier cosa que necesite un número entero sin decimales.
DecimalSe utiliza para cualquier cosa que necesite un número con decimales (por ejemplo, 3,145).
CasillaSe utiliza para cualquier cosa que requiera un valor verdadero o falso.
FechaSe utiliza para cualquier elemento que necesite representar una fecha.
Nota importante: el script utiliza el formato ISO 8601.
Fecha/horaSe utiliza para cualquier elemento que necesite representar una fecha y una hora.
Nota importante: el script utiliza el formato ISO 8601.
DesplegableSe utiliza para cualquier elemento que necesite representar una elección con varias opciones.
Dirección IPÚtil para cualquier elemento que necesite representar una dirección IP.

Uso de una variable en el editor de scripts

Las variables se envían al script como variables de entorno, que solo existen dentro del script en ejecución durante el tiempo de ejecución de dicho script.

Una vez que las variables deseadas se han establecido en la parte derecha del editor de scripts, se pueden utilizar dentro del script pulsando CTRL + Espacio en el teclado y seleccionando la opción en el cuadro emergente que aparece. Pase el cursor por encima de la variable para ver una descripción y haga clic en ella para insertarla en el script.

script_variable.png
Figura 1: Página de scripts de NinjaOne → Añadir y utilizar variables (haga clic para ampliar)

También puede introducir variables manualmente haciendo referencia a ellas por su nombre tal y como aparecen en el cuadro de entrada de la derecha.

Los diferentes lenguajes de scripting requieren diferentes entradas para hacer referencia a la variable; consulte la tabla siguiente para ver algunos ejemplos.

Lenguaje de scriptEjemplo de referencia
PowerShell

$env:<nombre de la variable>

$env:dateOfBirth
Lote

%<nombre de la variable>%

%fechaDeNacIMIentO%
VBScript

<nombre de la variable> = CreateObject("WScript.Shell").ExpandEnvironmentStrings("%nombre de la variable%")

dateOfBirth = CreateObject("WScript.Shell").ExpandEnvironmentStrings("%dateOfBirth%")
ShellScript

$<nombre_variable>

$fechaDeNacimiento

Tenga en cuenta que todas las variables se establecen como cadenas en el código que está escribiendo, por lo que es posible que tenga que convertir o transformarlos. Consulte la sección sobre ejecución de scripts para ver los valores que se envían y su formato.

Visualización de un script con variables

Las variables se representan de forma diferente en función de las selecciones elegidas en el editor de scripts. A continuación se muestra un ejemplo de cómo se ven las diferentes variables en un script preparado para ejecutarse en un dispositivo.

Tenga en cuenta que si una variable se ha marcado como obligatoria, aparecerá un asterisco (*) junto al nombre de la variable. Si el usuario que ejecuta el script no rellena este campo o no se ha proporcionado un valor predeterminado, el script no se ejecutará, el campo obligatorio se volverá rojo y se pedirá a los usuarios que introduzcan un valor para continuar.

demo script.png
Figura 2: Ejemplo de campos de variables en un script de NinjaOne

Envío de variables de script a un agente

Notas importantes:
  • Las variables de script que se envían vacías (sin valor añadido) siempre se envían como una cadena vacía. Recomendamos comprobar si hay algún valor vacío si no ha marcado una variable de script como obligatoria.
  • Las variables de script que se envían al agente no son de tipo fuerte. Todos los valores se enviarán como una cadena. Si desea convertirlas a un tipo determinado, deberá hacerlo en su propio código.

Algunos lenguajes permiten convertir cadenas en objetos fuertemente tipados en el código. Por ejemplo, PowerShell puede convertir a una fecha/hora de la siguiente manera:

$Test1 = [datetime]$ENV:Test1

Puede convertir a un valor booleano de la siguiente manera:

$Test2 = [System.Boolean]::Parse($ENV:Test2)

Hay algunas reglas sencillas que sigue el motor de scripts al enviar variables de script a un agente:

Tipo de variableRegla del motor de scripts
Cadena/textoSe envía tal y como se ha introducido (por ejemplo, «Hola mundo»).
EnteroSe envía como números enteros (por ejemplo, «314»).
DecimalSe envía como números de coma flotante (por ejemplo, «3,14»).
CasillaCuando están marcadas, las casillas de verificación se envían como un valor de cadena «true».
Cuando no están marcadas, las casillas de verificación se envían como un valor de cadena «false».
FechaSe envía como una cadena con formato ISO 8601 en forma de AAAA-MM-ddT00:00:00.000+00:00
Fecha/horaSe envía como una cadena con formato ISO 8601 en forma de AAAA-MM-DDTHH:MM:SS.SSSZ (por ejemplo, 2023-07-28T03:00:00.000+01:00).
DesplegableSe envía como una cadena con el valor seleccionado.
Dirección IPSe envía como una cadena con la dirección IP introducida.

Recursos

FAQ

Próximos pasos