Tema
Esta documentación explica cómo utilizar el componente ninjarmm-cli en los sistemas operativos Microsoft Windows, Apple macOS y Linux.
Entorno
- NinjaOne Endpoint Management
- Documentación de NinjaOne
Descripción
El componente ninjarmm-cli es un archivo ejecutable que le permite acceder e interactuar con campos personalizados específicos y datos de documentación desde la interfaz de línea de comandos (CLI), el terminal o scripts personalizados.
Selecciona una categoría para obtener más información:
- Notas importantes
- Acceso a campos seguros a través de automatizaciones
- Interactuar con campos personalizados a través de la CLI de Windows o el terminal
- Módulo de PowerShell de NinjaOne
- Interacción con campos personalizados mediante comandos de la CLI de Windows, scripts personalizados por lotes, ShellScript en UNIX o scripts personalizados de ShellScript
- Interacción con campos personalizados mediante comandos de PowerShell o scripts personalizados
- Recursos adicionales
Notas importantes
Antes de utilizar ninjarmm-cli, debe tener en cuenta lo siguiente:
- Los campos seguros son de solo escritura para los campos de documentación.
- Para obtener un desglose completo de los campos compatibles, consulte la interfaz de línea de comandos (CLI).
- Puede leer o escribir datos de documentación en la CLI o en scripts personalizados. Puede generar una lista de plantillas, una lista de documentos por nombre de plantilla o número de identificación, y el valor de cada campo de un documento.
- La CLI o los scripts personalizados solo pueden acceder a plantillas y documentos que contengan al menos un campo rellenado. Las plantillas y los documentos vacíos no se mostrarán.
- Puede utilizar scripts personalizados escritos en Batch o PowerShell para Windows, o en ShellScript para macOS y Linux. Dado que
ninjarmm-cli.exereside en una carpeta protegida a la que los usuarios normales no tienen acceso, debe ejecutar cualquier script que utilice esta funcionalidad como el sistema, o debe cambiar los permisos en consecuencia.- Las versiones 1 y 2 de PowerShell no son compatibles.
- Para saber qué campos admiten el acceso a través de la CLI y scripts personalizados, consulte la interfaz de línea de comandos (CLI).
- En dispositivos Linux, debe añadir
./delante deninjarmm-clien el terminal para ejecutar el comando correctamente. - En dispositivos Windows, si necesita almacenar la salida del comando
ninjarmm-cli geten una variable, puede utilizar el parámetro opcional--direct-outpara forzar el uso del canal de salida estándarstdouten lugar de funciones de la API de Windows comoWriteConsoleW/WriteFile. Sin embargo, al hacerlo, puede perder la compatibilidad con la salida Unicode, que no funciona correctamente en algunas versiones de Windows con el canalstdout. Consulte el siguiente ejemplo de este comando:
ninjarmm-cli --direct-out get [nombre del campo]Acceso a campos seguros mediante automatizaciones
Cualquier automatización que se ejecute desde la biblioteca de automatizaciones puede acceder a los campos seguros, entre los que se incluyen:
- Condiciones de script
- Condiciones compuestas de scripts
- Tareas programadas de políticas
- Tareas programadas globales
- Acciones «Ejecutar antes» en tareas de copia de seguridad, aplicación de parches, instalación de la aplicación y tareas similares
- Acciones posteriores a la ejecución en tareas de copia de seguridad, aplicación de parches, instalación de la aplicación y tareas similares
- Acciones de automatización en función de condiciones
- Ejecutar automatización
Algunos aspectos importantes a tener en cuenta con respecto a los campos seguros incluyen:
- NinjaOne solo proporciona acceso a los campos personalizados seguros durante la ejecución de la automatización.
- Ni el terminal web ni el terminal local pueden acceder a los campos personalizados seguros.
- Solo los comandos ejecutados en un dispositivo local iniciados por NinjaOne pueden acceder a los campos personalizados, incluidas las operaciones GET y SET, los campos personalizados seguros y los campos seguros de documentación. Sin embargo, los campos seguros de documentación solo utilizan operaciones SET a través de la CLI.
Interacción con campos personalizados a través de la CLI de Windows o la terminal
El agente descomprime automáticamente este ejecutable en las siguientes carpetas:
- Windows:
C:ProgramDataNinjaRMMAgentninjarmm-cli.exe - macOS:
/Applications/NinjaRMMAgent/programdata/ninjarmm-cli - Linux:
/opt/NinjaRMMAgent/programdata/ninjarmm-cli
En Windows, utilice la siguiente variable de entorno especial a nivel del sistema:
- Windows:
%NINJARMMCLI%paraC:ProgramDataNinjaRMMAgentninjarmm-cli.exe - Linux:
$NINJA_DATA_PATH/ninjarmm-cli set $fieldname $variable
La CLI de NinjaRMM tiene un aspecto similar al siguiente ejemplo de Windows:
c:ProgramDataNinjaRMMAgentninjarmm-cli.exe help
ninjarmm-cli: herramienta CLI para acceder y gestionar los campos personalizados del agente NinjaRMM.
Uso:
help - muestra este texto
Campos globales y de rol:
get <nombre del atributo> - obtiene el valor del atributo con el nombre especificado
set <nombre del atributo> <valor del atributo y lista de valores separados por comas> - establece el valor del atributo especificado
--stdin - modificador opcional para utilizar datos canalizados. Por ejemplo: dir | %NINJARMMCLI% set --stdin myfield
options <nombre del atributo> - obtiene la lista de valores válidos para el nombre del atributo (útil para atributos de menú desplegable y de selección múltiple)
Campos de documentación:
templates - obtiene una lista de las plantillas que contienen documentos y atributos
--ids, --names - modificadores opcionales
documentos "<id/nombre de la plantilla>" - obtiene una lista de los documentos de la plantilla por id o nombre (se requieren comillas)
--ids, --names - modificadores opcionales
obtener "<id/nombre de la plantilla>" "<nombre del documento>" <nombre del atributo> - obtiene el atributo del documento por nombre del documento e id/nombre de la plantilla (se requieren comillas)
get "<nombre de plantilla única>" <nombre de atributo> - obtiene el atributo de un documento único por nombre de plantilla (se requieren comillas)
org-set "<id/nombre de plantilla>" "<nombre de documento>" <nombre de atributo> "<valor del atributo y lista de valores separados por comas>" - establece el atributo en el documento/atributo especificado por nombre de documento e id/nombre de plantilla (se requieren comillas)
org-set "<nombre de plantilla única>" <nombre de atributo> "<valor del atributo y lista de valores separados por comas>" - establece el atributo en un documento/atributo único por nombre de plantilla (se requieren comillas)
org-clear "<id/nombre de la plantilla>" "<nombre del documento>" <nombre del atributo> - borra el valor del documento según el nombre del documento y el id/nombre de la plantilla (se requieren comillas, se representa como NULL)
org-clear "<nombre de una sola plantilla>" <nombre del atributo> - borra el valor de un único documento según el nombre de la plantilla (se requieren comillas, se representa como NULL)
org-options "<id/nombre de la plantilla>" "<nombre del documento>" <nombre del atributo> - obtener la lista de valores válidos para el nombre del atributo del documento por nombre del documento e id/nombre de la plantilla (aplicable a atributos desplegables y de selección múltiple)
org-options "<nombre de una sola plantilla>" <nombre del atributo> - obtiene una lista de los valores válidos para el nombre de un atributo de documento por nombre de plantilla (aplicable a atributos desplegables y de selección múltiple)
Formato de salida:
códigos de salida: 0 - Éxito, 1 - Error
en caso de éxito: sale con 0 e imprime el valor
en caso de error: sale con 1 e imprime la descripción del error
Para leer el código de salida: Win: 'echo %errorlevel%', Unix: 'echo $?'
Tipos de atributos:
CheckBox - Tipo booleano, valores aceptables: 0, 1, true, false
Numeric - Tipo entero, valores comprendidos entre -2147483648 y 2147483647, admite configuraciones de filtro de entrada avanzadas.
Decimal: tipo flotante, valores entre -9999999,999999 y 9999999,999999; admite la configuración del filtro de entrada avanzado.
TextMultiLine, Text: cadena normal
TextEmail: cadena normal; debe coincidir con el formato de correo electrónico RFC 5322
TextIpAddress: cadena normal; debe coincidir con el formato IPv4 o IPv6; admite la configuración del filtro de entrada avanzado
TextPhone: cadena regular; debe coincidir con el formato de número de teléfono E.164
TextEncrypted: cadena cifrada regular; admite configuraciones avanzadas del filtro de entrada (solo de escritura para la documentación)
DateTime: segundos enteros desde el inicio de la era Unix o formato ISO «aaaa-MM-ddTHH:mm:ss» sin zona horaria (UTC)
Date: segundos enteros desde el inicio de la era Unix o formato ISO «aaaa-MM-dd»
Time: segundos enteros o formato ISO «HH:mm:ss»
MultiSelect: lista de opciones únicas (véase el comando <options>)
MultiSelectNode, MultiSelectClient, MultiSelectClientLocation: (solo lectura mediante CLI) datos relacionados con la organización
Menú desplegable: una opción única (véase el comando <options>)
DropdownNode, DropdownClient, DropdownClientLocation: (solo lectura mediante CLI) datos relacionados con la organización
Archivo adjunto: (solo lectura mediante CLI) objeto JSON con información sobre el archivo.
WYSIWYG: (solo lectura mediante CLI) objeto JSON con contenido HTML y TEXTMódulo de NinjaOne para PowerShell
Al instalar el agente de NinjaOne, NinjaOne implementa y carga un módulo personalizado de NinjaOne PowerShell para interactuar con los campos personalizados. Puede acceder a ninjarmm-cli en dispositivos Windows a través de este módulo de PowerShell simplemente llamando a los nombres de las funciones dentro de PowerShell.
Comandos de PowerShell de NinjaOne
A continuación se detallan los comandos de PowerShell que puede ejecutar.
Get-NinjaProperty
El comando Get-NinjaProperty es una evolución del comando original Ninja-Property-Get. La función Get-NinjaProperty recupera y convierte un valor de campo personalizado de Ninja en función del nombre y el tipo de campo especificados.
El comando acepta un nombre de campo, un tipo de propiedad y un nombre de documento opcional. Cuando se proporciona un nombre de documento, la función recuperará el valor de la propiedad del documento de Ninja especificado. Dependiendo del tipo especificado (por ejemplo, Date, DateTime, Checkbox, Dropdown, etc.), la función convertirá el valor sin procesar en un objeto de PowerShell adecuado. Si el tipo de propiedad requiere opciones adicionales, como menús desplegables o campos de selección múltiple, la función recupera estas opciones y devuelve un valor fácil de usar.
Los tipos admitidos incluyen: Archivo adjunto, Casilla de verificación, Fecha, Fecha y hora, Decimal, Menú desplegable de dispositivo, Selección múltiple de dispositivo, Menú desplegable, Correo electrónico, Entero, Dirección IP, Multilínea, Selección múltiple, Menú desplegable de organización, Menú desplegable de ubicación de organización, Selección múltiple de ubicación de organización, Selección múltiple de organización, Teléfono, Seguro, Texto, Hora, WYSIWYG y URL.
La sintaxis es la siguiente: Get-NinjaProperty [-Name] <String[]> [[-Type] <String>] [[-DocumentName] <String>] [<CommonParameters>]
Ejemplos
Al recuperar un menú desplegable de campo personalizado sin especificar el tipo, se devuelve el valor GUID de la opción seleccionada en el menú desplegable.
Al recuperar el menú desplegable de un campo personalizado especificando el tipo de campo personalizado (menú desplegable), el comando devuelve el valor legible para el usuario que se ve dentro de la plataforma en lugar del valor GUID.
Set-NinjaProperty
El comando Set-NinjaProperty es una evolución del comando original Ninja-Property-Set. La función Set-NinjaProperty establece un campo personalizado basándose en los parámetros proporcionados. Cuando se le proporciona un tipo de campo, intenta convertir el valor proporcionado a uno compatible con ese campo en particular. Por ejemplo, cuando se le proporciona un objeto DateTime y se especifica el tipo «Date», convierte el objeto de fecha en una marca de tiempo de la época Unix y establece el campo con ese valor.
También puede establecer campos desplegables y de selección múltiple utilizando los nombres de los campos en lugar de sus GUID.
Los tipos admitidos incluyen: Casilla de verificación, Fecha, Fecha o Fecha y hora, DateTime, Decimal, Despliegable, Correo electrónico, Entero, Dirección IP, Multilínea, Selección múltiple, Teléfono, Seguro, Texto, Hora, URL y WYSIWYG.
Ejemplos
Para configurar un campo personalizado desplegable sin especificar el tipo de campo, se requiere el valor GUID único de la opción desplegable deseada.
Configurar un campo personalizado desplegable especificando el tipo de campo como «desplegable» le permite utilizar el valor fácil de usar que se muestra dentro de la plataforma en lugar del valor GUID.
Ambos comandos, Get-NinjaProperty y Set-NinjaProperty, son totalmente compatibles con Unicode, por lo que puede configurar y recuperar emojis a través de ellos.
Puede acceder a detalles y ejemplos adicionales para ambos comandos abriendo PowerShell en un dispositivo con el agente NinjaOne instalado e introduciendo:
Get-Help Get-NinjaPropertyO
Get-Help Set-NinjaPropertyTodos los comandos originales de NinjaOne para PowerShell siguen funcionando tal y como se diseñaron originalmente. Dichos comandos son:
Ninja-Property-Get $AttributeName
Ninja-Property-Set $AttributeName $Value
Ninja-Property-Options $AttributeName
Ninja-Property-Clear $AttributeNameComandos de documentación
Ninja-Property-Docs-Templates
Ninja-Property-Docs-Names $TemplateId
Ninja-Property-Docs-Names "$TemplateName"
Ninja-Property-Docs-Get $TemplateId "$DocumentName" $AttributeName
Ninja-Property-Docs-Set $TemplateID "$DocumentName" $AttributeName "value"
Ninja-Property-Docs-Get-Single "templateName" "fieldName"
Ninja-Property-Docs-Set-Single "templateName" "fieldName" "new value"
Ninja-Property-Docs-Clear
Ninja-Property-Docs-Options
Ninja-Property-Docs-Clear-Single: borra el valor de un único documento por nombre de plantilla (se requieren comillas, representado como NULL)
Ninja-Property-Docs-Options-Single: obtiene la lista de valores válidos para el nombre de un atributo de documento único por nombre de plantilla (aplicable a atributos de menú desplegable y de selección múltiple)Interacción con campos personalizados mediante comandos de la CLI de Windows, scripts personalizados por lotes, ShellScript en UNIX o scripts personalizados de ShellScript
Los ejemplos de esta sección muestran cómo utilizar comandos y scripts por lotes para tipos específicos de campos personalizados. Describen llamadas a ninjarmm-cli sin una ruta completa, pero puede especificar la ruta completa en función de su plataforma, tal y como se ha descrito anteriormente en este artículo. No hay diferencias entre las llamadas a la utilidad de la CLI en diferentes plataformas.
Marca de tiempo
La hora se calcula de la siguiente manera:
- El sistema toma como referencia el 1 de enero de 1970 a las 00:00:00 UTC como la época Unix.
- El valor de la fecha corresponde a los segundos transcurridos desde el 1 de enero de 1970 a las 00:00:00 UTC.Puede utilizar una herramienta de conversión de marcas de tiempo para obtener este valor en un formato de fecha legible para el ser humano.
- Si establece el valor en formato ISO, se convertirá a los segundos transcurridos desde el 1 de enero de 1970 en UTC.
Los ejemplos de esta sección muestran cómo utilizar comandos o scripts de PowerShell para tipos específicos de campos personalizados.
Seleccione un tema para continuar:
- Casilla de verificación
- Fecha
- Fecha/hora
- Decimal
- Menú desplegable
- Correo electrónico
- Entero
- Dirección IP
- Varias líneas
- Selección múltiple
- Número de teléfono
- Seguro
- Texto
- Hora
- URL
- Campos de documentación
Casilla de verificación
Obtener:
# obtener el valor del campo casilla de verificación
> ninjarmm-cli get globalcheckbox
0Establecer:
# establecer un valor booleano en el campo de casilla de verificación
> ninjarmm-cli set globalcheckbox 0
0
> ninjarmm-cli set globalcheckbox 1
1
> ninjarmm-cli set globalcheckbox true
1
> ninjarmm-cli set globalcheckbox false
0Fecha
Obtener:
# obtener el valor del campo de fecha
> ninjarmm-cli get globaldate
456Establecer:
# establecer valor en el campo de fecha
> ninjarmm-cli set globaldate 1626875470000
> ninjarmm-cli set testdate 2021-10-15
1634256000Fecha/Hora
Obtener:
# obtener el valor del campo de fecha y hora
> ninjarmm-cli get globaldatetime
1626875470000Establecer:
# establecer valor en el campo de fecha y hora
> ninjarmm-cli set globaldatetime 1626875470000
1626875470000
> ninjarmm-cli set testdatetime 2021-10-15T00:00:00
1634256000Decimal
Obtener:
# obtener el valor del campo decimal
> ninjarmm-cli get globaldecimal
123,456Establecer:
# establecer valor en el campo decimal
> ninjarmm-cli set typedecimal 1
1
> ninjarmm-cli set typedecimal 1.23
1.23
> ninjarmm-cli set typedecimal 1.23
1.23
> ninjarmm-cli set typedecimal 1.2345678901234567890
1.234567 # truncado a la precisión máxima; es mejor no utilizar un valor más corto para evitar problemas de conversión de tipos de datos
> ninjarmm-cli set typedecimal 1234567890.1234567890
1234567890.123457Menú desplegable
Opciones:
# listar opciones para el campo desplegable
> ninjarmm-cli options globaldropdown
333f541e-747e-4a1e-a2e2-a82c1c2f2008=Option2
74a6ffda-708e-435a-86e3-40b67c4f981a=Opción1
f1ba449c-fd34-49df-b878-af3877180d17=Opción3Obtener el GUID por nombre de opción:
# busca el GUID de la opción por el nombre de la opción para el campo desplegable
> ninjarmm-cli options globaldropdown | grep "Opción 1" | awk -F= '{print $1}'
74a6ffda-708e-435a-86e3-40b67c4f981aObtener:
# obtener el valor del campo desplegable
> ninjarmm-cli get globaldropdown
74a6ffda-708e-435a-86e3-40b67c4f981aEstablecer:
# establecer el valor del campo desplegable
> ninjarmm-cli set globaldropdown f1ba449c-fd34-49df-b878-af3877180d17Correo electrónico
Obtener:
# obtener el valor almacenado
> ninjarmm-cli get typeemail
[email protected]Establecer:
# valores correctos
> ninjarmm-cli set typeemail [email protected]
[email protected]
> ninjarmm-cli set typeemail [email protected]
[email protected]
# establecer valores incorrectos
> ninjarmm-cli set typeemail [email protected]
Error: Formato o tipo de valor incorrecto...Entero
Obtener:
# obtener el valor del campo entero
> ninjarmm-cli get globalinteger
456Establecer:
# establecer el valor del campo entero
> ninjarmm-cli set globalinteger 123Dirección IP
Obtener:
# obtener el valor almacenado
> ninjarmm-cli get typeipaddress
192.168.1.100Establecer:
# establecer valores correctos
> ninjarmm-cli set typeipaddress 255.255.255.255
255.255.255.255
> ninjarmm-cli set typeipaddress 0.0.0.0
0.0.0.0
# establecer valores incorrectos
> ninjarmm-cli set typeipaddress 192.168.1.
Error: Formato o tipo de valor incorrecto...
> ninjarmm-cli set typeipaddress 255.255.255.256
Error: Formato o tipo de valor incorrecto...
> ninjarmm-cli set typeipaddress 0.-1.0.0
Error: Formato o tipo de valor incorrecto...Varias líneas
Obtener:
# obtener campo multilínea
> ninjarmm-cli get globalmultiline
sampletext1Establecer:
# establecer campo de texto
> ninjarmm-cli set globalmultiline sampletext2
Establecer (alternativa):
# establecer campo de texto con datos canalizados
> ls -alh | ninjarmm-cli set globalmultilineNinjaOne admite el uso de una sola cadena multilínea si se utiliza el carácter de control `n (la tecla «backtick» o «backspark» más la letra «n»). El texto debe introducirse en la línea de comandos como una sola línea debido a las restricciones de la CLI o la terminal, y está limitado a 10 000 caracteres. También puede incorporar espacios colocando toda la cadena entre comillas. Al utilizar estos caracteres de control, los datos se mostrarán de la siguiente manera:
Ninja-Property-Set multiline "línea con espacios'nlínea2'nlínea3'nvalor final"
multiline
línea con espacios
línea2
línea3
valor finalLa sintaxis predeterminada del comando «Set» es suficiente para la mayoría de los casos. Con la sintaxis predeterminada, la herramienta «ninjarmm-cli» toma los datos de los argumentos de la línea de comandos. Pero a veces no es suficiente y es necesario obtener los datos del canal stdin (entrada estándar).
Por ejemplo, cuando necesitas establecer datos en el campo de texto multilínea , o quieres obtener la salida del archivo y almacenarla en el campo. O bien, para evitar la ruptura de tabulaciones o espacios en la salida formateada de otras aplicaciones.
Para ello, la herramienta CLI ofrece una sintaxis alternativa con el parámetro --stdin. Así pues, al utilizar este argumento, debe proporcionar los datos como entrada en el canal stdin, utilizando tuberías de Unix. Por ejemplo: dir | ninjarmm-cli set --stdin [nombre de mi campo] o cat /proc/cpuinfo | grep vendor_id | ninjarmm-cli set --stdin [otro nombre de campo]. Los datos canalizados se almacenarán en el campo de destino si cumplen todas las condiciones de tipo de campo.
Selección múltiple
Opciones:
# listar opciones para el campo de selección múltiple
> ninjarmm-cli options globalmultiselect
333f541e-747e-4a1e-a2e2-a82c1c2f2008=Opción2
74a6ffda-708e-435a-86e3-40b67c4f981a=Opción1
f1ba449c-fd34-49df-b878-af3877180d17=Opción3Obtener el GUID por nombre de opción:
# busca el GUID de la opción por el nombre de la opción para el campo de selección múltiple
> ninjarmm-cli options globalmultiselect | grep "Opción 1" | awk -F= '{print $1}'
74a6ffda-708e-435a-86e3-40b67c4f981aEstablecer:
# establecer varios valores para el campo de selección múltiple, separados por comas
> ninjarmm-cli set globalmultiselect 333f541e-747e-4a1e-a2e2-a82c1c2f2008,74a6ffda-708e-435a-86e3-40b67c4f981aObtener:
# obtener valores para el campo de selección múltiple
> ninjarmm-cli get globalmultiselect
333f541e-747e-4a1e-a2e2-a82c1c2f2008, 74a6ffda-708e-435a-86e3-40b67c4f981aNúmero de teléfono
Obtener:
# obtener el valor almacenado
ninjarmm-cli get typephone
+1234567890Establecer:
# establecer valores correctos
> ninjarmm-cli set typephone +77013273916
+77013273916
> ninjarmm-cli set typephone 123456789012344567
123456789012344567
> ninjarmm-cli set typephone +123456789012344567
+123456789012344567
# establecer valores incorrectos
> ninjarmm-cli set typephone 14953273916qwerty
Error: Formato/tipo de valor incorrecto ...
> ninjarmm-cli set typephone 1234567890123445678 # demasiado largo
Error: Formato o tipo de valor incorrecto...
> ninjarmm-cli set typephone ++123456789012344567
Error: Formato o tipo de valor incorrecto...Seguro
Para evitar que los valores de los campos seguros se muestren en la salida del script en dispositivos Windows, el script debe contener @echo off y @echo on alrededor del código que llama a %NINJARMMCLI% set [nombre del campo seguro] [valor seguro]. De forma predeterminada, Windows muestra todos los comandos que los usuarios introducen o ejecutan.
Para evitar que los valores de los campos seguros se muestren en la salida del script en dispositivos Unix (macOS o Linux), el script no debe contener set -x antes de ejecutarse. Esta omisión evita que se repitan los comandos ejecutados que contienen valores seguros.
Obtener:
# obtener campo seguro
> ninjarmm-cli get globalsecure
sampletext1Establecer:
# establecer campo seguro
> ninjarmm-cli set globalsecure sampletext2Texto
Obtener:
# obtener campo de texto
> ninjarmm-cli get globaltext
sampletext1Establecer:
# establecer campo de texto
> ninjarmm-cli set globaltext sampletext2Hora
Obtener:
# obtener el valor del campo de hora
> ninjarmm-cli get globaldatetime
120Establecer:
# establecer valor en el campo de hora
> ninjarmm-cli set globaldatetime 3600
3600
> ninjarmm-cli set testdatetime 00:00:00
0URL
El campo URL tiene un límite de 200 caracteres y debe comenzar por https://.
Obtener:
# obtener el campo URL
> ninjarmm-cli get url
https://www.google.comEstablecer:
# establecer el campo URL
> ninjarmm-cli set url https://www.ninjarmm.comCampos de documentación
Obtener:
# obtener lista de plantillas
> ninjarmm-cli templates
1=plantilla 1
2=plantilla 2
# obtener lista de documentos por ID de plantilla
> ninjarmm-cli documents 2
16=plantilla 2
# obtener lista de documentos por nombre de plantilla
> ninjarmm-cli documents "plantilla 2"
16=plantilla 2
# obtener el valor de un campo de un documento
> ninjarmm-cli get "plantilla 2" "plantilla 2" nombre_campo
Este es el valor del campoEstablecer:
# establecer un atributo en el documento/atributo especificado por nombre de documento e ID/nombre de plantilla (se requieren comillas)
> ninjarmm-cli org-set "plantilla 2" "ExampleDoc" ExampleTextField "SampleText1"
# establecer un atributo en un único documento/atributo por nombre de plantilla (se requieren comillas)
> ninjarmm-cli org-set "plantilla 2" ExampleTextField "SampleText1"
# borra el valor del documento por nombre de documento e ID/nombre de plantilla (se requieren comillas, representado como NULL)
> ninjarmm-cli org-clear "template 2" "ExampleDoc" ExampleTextField
# borra el valor de un único documento por nombre de plantilla (se requieren comillas, representado como NULL)
> ninjarmm-cli org-clear "template 2" ExampleTextFieldOpciones:
# obtener la lista de valores válidos para el nombre de un atributo de documento por nombre de documento e ID/nombre de plantilla (aplicable a atributos de menú desplegable y de selección múltiple)
> ninjarmm-cli org-options "plantilla 2" "ExampleDoc" ExampleTextField
# obtener la lista de valores válidos para el nombre de un atributo de un documento concreto por nombre de plantilla (aplicable a atributos de menú desplegable y de selección múltiple)
> ninjarmm-cli org-options "template 2" ExampleTextFieldInteractuar con campos personalizados mediante comandos de PowerShell o scripts personalizados
Los ejemplos de esta sección muestran cómo utilizar comandos o scripts de PowerShell para tipos específicos de campos personalizados. Utilice los enlaces siguientes para acceder a los scripts que desee consultar:
- Casilla de verificación
- Fecha
- Fecha/hora
- Decimal
- Menú desplegable
- Correo electrónico
- Entero
- Dirección IP
- Varias líneas
- Selección múltiple
- Número de teléfono
- Seguro
- Texto
- Hora
- URL
- Campos de documentación
Casilla de verificación
Obtener:
# obtener el valor del campo casilla de verificación
> Ninja-Property-Get globalcheckbox
0Establecer:
# establecer un valor booleano en el campo de casilla de verificación
> Ninja-Property-Set globalcheckbox 0
0
> Ninja-Property-Set globalcheckbox 1
1
> Ninja-Property-Set globalcheckbox true
1
> Ninja-Property-Set globalcheckbox false
0Fecha
Obtener:
# obtener el valor del campo de fecha
> Ninja-Property-Get globaldate
456Establecer:
# establecer valor en el campo de fecha
> Ninja-Property-Set globaldate 1626875470000
> Ninja-Property-Set testdate 2021-10-15
1634256000Fecha/Hora
Obtener:
# obtener el valor del campo de fecha y hora
> Ninja-Property-Get globaldatetime
1626875470000Establecer:
# establecer valor en el campo de fecha y hora
> Ninja-Property-Set globaldatetime 1626875470000
1626875470000
> Ninja-Property-Set testdatetime 2021-10-15T00:00:00
1634256000Decimal
Obtener:
# obtener el valor del campo decimal
> Ninja-Property-Get globaldecimal
123,456Establecer:
# establecer valor en campo decimal
> Ninja-Property-Set typedecimal 1
1
> Ninja-Property-Set typedecimal 1.23
1.23
> Ninja-Property-Set typedecimal 1.23
1.23
> Ninja-Property-Set typedecimal 1.2345678901234567890
1,234567 # truncado a la precisión máxima; es mejor no usar más precisión para evitar problemas de conversión de tipos de datos
> Ninja-Property-Set typedecimal 1234567890,1234567890
1234567890,123457Menú desplegable
Opciones:
# lista de opciones para el campo desplegable
> Ninja-Property-Options globaldropdown
333f541e-747e-4a1e-a2e2-a82c1c2f2008=Opción2
74a6ffda-708e-435a-86e3-40b67c4f981a=Opción1
f1ba449c-fd34-49df-b878-af3877180d17=Opción3Obtener el GUID de la opción por su nombre:
# busca el GUID de la opción por el nombre de la opción para el campo desplegable
> Ninja-Property-Get globaldropdown | grep "Option1" | awk -F= '{print $1}'
74a6ffda-708e-435a-86e3-40b67c4f981aObtener:
# obtener el valor del campo desplegable
> Ninja-Property-Get globaldropdown
74a6ffda-708e-435a-86e3-40b67c4f981aEstablecer:
# establecer el valor del campo desplegable
> Ninja-Property-Set globaldropdown f1ba449c-fd34-49df-b878-af3877180d17Correo electrónico
Obtener:
# obtener el valor almacenado
> Ninja-Property-Get typeemail
[email protected]Establecer:
# corregir valores
> Ninja-Property-Set typeemail [email protected]
[email protected]
> Ninja-Property-Set typeemail [email protected]
[email protected]
# establecer valores incorrectos
> Ninja-Property-Set typeemail [email protected]
Error: Formato o tipo de valor incorrecto ...Entero
Para el campo Entero, el valor establecido debe ser un entero (un número entero sin decimales) dentro del rango de -2147483648 a 2147483647.
Obtener:
# obtener el valor del campo entero
> Ninja-Property-Get globalinteger
456Establecer:
# establecer valor en el campo entero
> Ninja-Property-Set globalinteger 123Dirección IP
Para el campo IP , el valor establecido debe estar en formato IPv4 (Protocolo de Internet versión 4) o IPv6 (Protocolo de Internet versión 6).
Obtener:
# obtener el valor almacenado
> Ninja-Property-Get typeipaddress
192.168.1.100Establecer:
# establecer valores correctos
> Ninja-Property-Set typeipaddress 255.255.255.255
255.255.255.255
> Ninja-Property-Set typeipaddress 0.0.0.0
0.0.0.0
# establecer valores incorrectos
> Ninja-Property-Set typeipaddress 192.168.1.
Error: Formato o tipo de valor incorrecto...
> Ninja-Property-Set typeipaddress 255.255.255.256
Error: Formato o tipo de valor incorrecto...
> Ninja-Property-Set typeipaddress 0.-1.0.0
Error: Formato o tipo de valor incorrecto...Varias líneas
Debido a restricciones de la CLI o del terminal, el texto debe introducirse en la línea de comandos en una sola línea y está limitado a 10 000 caracteres.
Obtener:
# obtener campo de texto
> Ninja-Property-Get globaltext
sampletext1Establecer:
# establecer campo de texto
>Ninja-Property-Set globaltext texto de ejemplo 2Selección múltiple
Opciones:
# listar opciones para el campo de selección múltiple
> Ninja-Property-Options globalmultiselect
333f541e-747e-4a1e-a2e2-a82c1c2f2008=Option2
74a6ffda-708e-435a-86e3-40b67c4f981a=Opción1
f1ba449c-fd34-49df-b878-af3877180d17=Opción3Obtener el GUID de la opción por nombre de opción:
# buscar el GUID de la opción por el nombre de la opción para el campo de selección múltiple
> Ninja-Property-Options globalmultiselect | grep "Opción 1" | awk -F= '{print $1}'
74a6ffda-708e-435a-86e3-40ba67c4f981aEstablecer:
# establecer varios valores para el campo de selección múltiple, separados por comas
> Ninja-Property-Set globalmultiselect 333f541e-747e-4a1e-a2e2-a82c1c2f2008,
74a6ffda-708e-435a-86e3-40b67c4f981aObtener:
# obtener valores para el campo de selección múltiple
> Ninja-Property-Get globalmultiselect
333f541e-747e-4a1e-a1e2-a82c1c2f2008, 74a6ffda-708e-435a-86e3-40b67c4f981aNúmero de teléfono
Obtener:
# obtener el valor almacenado
Ninja-Property-Get typephone
+1234567890Establecer:
# establecer valores correctos
> Ninja-Property-Set typephone +77013273916
+77013273916
> Ninja-Property-Set typephone 123456789012344567
123456789012344567
> Ninja-Property-Set typephone 123456789012344567
123456789012344567
> Ninja-Property-Set typephone +123456789012344567
+123456789012344567
# valores incorrectos
> Ninja-Property-Set typephone 14953273916qwerty
Error: Formato o tipo de valor incorrecto...
> Ninja-Property-Set typephone 14953273916qwerty
Error: Formato o tipo de valor incorrecto...
> Ninja-Property-Set typephone 1234567890123445678 # demasiado largo
Error: Formato o tipo de valor incorrecto...
> Ninja-Property-Set typephone ++123456789012344567
Error: Formato o tipo de valor incorrecto...Seguro
Obtener:
# obtener campo seguro
> Ninja-Property-Get globalsecure
sampletext1Establecer:
# establecer campo seguro
>Ninja-Property-Set globalsecure sampletext2Texto
Obtener:
# obtener campo de texto
> Ninja-Property-Get globaltext
sampletext1Establecer:
# establecer campo de texto
>Ninja-Property-Set globaltext sampletext2Hora
Para el campo Hora , el valor establecido debe estar en segundos o en formato ISO (hh:mm:ss).
Obtener:
# obtener valor del campo de hora
> Ninja-Property-Get globaldatetime
120Establecer:
# establecer valor en el campo de hora
> Ninja-Property-Set globaldatetime 3600
3600
> Ninja-Property-Set testdatetime 00:00:00
0URL
El campo URL tiene un límite de 200 caracteres y debe comenzar por «https://».
Obtener:
# obtener el campo URL
> Ninja-Property-Get url
https://www.google.comEstablecer:
# establecer campo URL
>Ninja-Property-Set url https://www.google.comCampos de documentación
Obtener:
# obtener lista de plantillas
> Ninja-Property-Docs-Templates
1=plantilla 1
2=plantilla 2
# obtener lista de documentos por ID de plantilla
> Ninja-Property-Docs-Names 2
16=plantilla 2
# obtener lista de documentos por nombre de plantilla
> Ninja-Property-Docs-Names "plantilla 2"
16=plantilla 2
# obtener el valor de un campo del documento
> Ninja-Property-Docs-Get "plantilla 2" "plantilla 2" nombre_campo
Este es el valor del campoEstablecer:
# establecer un atributo en el documento/atributo especificado por nombre de documento e ID/nombre de plantilla (se requieren comillas)
> Ninja-Property-Docs-Set 2 "ExampleDoc" ExampleTextField
# establecer un atributo en un único documento/atributo por nombre de plantilla (se requieren comillas)
> Ninja-Property-Docs-Set-Single "plantilla 2" ExampleTextField "sampletext1"
# borra el valor del documento por nombre de documento e id/nombre de plantilla (se requieren comillas, representado como NULL)
> Ninja-Property-Docs-Clear "plantilla 2" "ExampleDoc" ExampleTextField
# borra el valor de un único documento por nombre de plantilla (se requieren comillas, representado como NULL)
> Ninja-Property-Docs-Clear-Single "plantilla 2" ExampleTextFieldOpciones:
# obtener la lista de valores válidos para el nombre de un atributo de documento por nombre de documento e id/nombre de plantilla (aplicable a atributos de menú desplegable y de selección múltiple)
> Ninja-Property-Docs-Options "plantilla 2" "ExampleDoc" ExampleTextField
# obtener la lista de valores válidos para un nombre de atributo de documento único por nombre de plantilla (aplicable a atributos de menú desplegable y selección múltiple)
> Ninja-Property-Docs-Options-Single "plantilla 2" ExampleTextFieldRecursos adicionales
Para obtener más información sobre la documentación, los campos personalizados, la CLI y la creación de scripts, consulte los siguientes artículos:
Interfaz de línea de comandos (CLI)
Uso de la interfaz de línea de comandos (CLI) en NinjaOne.
Documentación y campos personalizados
- Campos personalizados de NinjaOne: Catálogo de recursos.
- Introducción a los campos personalizados de NinjaOne.
- Documentación de NinjaOne: Aplicaciones y servicios.
Scripting