Argomento
Questa documentazione spiega come utilizzare il componente ninjarmm-cli per i sistemi operativi Microsoft Windows, Apple macOS e Linux.
Ambiente
- Gestione degli endpoint NinjaOne
- Documentazione NinjaOne
Descrizione
Il componente ninjarmm-cli è un file eseguibile che consente di accedere e interagire con specifici campi personalizzati e dati della documentazione dall'interfaccia della riga di comando (CLI), dal terminale o da script personalizzati.
Seleziona una categoria per saperne di più:
- Note importanti
- Accesso ai campi protetti tramite automazioni
- Interazione con i campi personalizzati tramite CLI di Windows o terminale
- Modulo NinjaOne PowerShell
- Interazione con i campi personalizzati tramite comandi CLI di Windows, script batch personalizzati, ShellScript su UNIX o script personalizzati ShellScript
- Interazione con i campi personalizzati tramite comandi PowerShell o script personalizzati
- Risorse aggiuntive
Note importanti
Prima di utilizzare ninjarmm-cli, è necessario tenere presente quanto segue:
- I campi protetti sono di sola scrittura per i campi di documentazione.
- Per l'elenco completo dei campi supportati, fare riferimento a Campi e funzionalità supportati dall'interfaccia della riga di comando (CLI).
- È possibile leggere o scrivere dati di documentazione nella CLI o in script personalizzati. È possibile generare un elenco di modelli, un elenco dei documenti in base al nome del modello o al numero di identificazione e il valore di ciascun campo in un documento.
- La CLI o gli script personalizzati possono accedere solo a modelli e documenti che contengono almeno un campo compilato. I modelli e i documenti vuoti non verranno visualizzati.
- È possibile utilizzare script personalizzati scritti in Batch o PowerShell per Windows, oppure in ShellScript per macOS e Linux. Poiché
ninjarmm-cli.exerisiede in una cartella protetta inaccessibile agli utenti normali, è necessario eseguire qualsiasi script che utilizzi questa funzionalità come sistema, oppure modificare le autorizzazioni di conseguenza.- Le versioni 1 e 2 di PowerShell non sono supportate.
- Per sapere quali campi supportano l'accesso tramite CLI e script personalizzati, consultare Campi e funzionalità supportati dall'interfaccia della riga di comando (CLI).
- Per i dispositivi Linux, è necessario aggiungere
./davanti aninjarmm-clinel terminale per eseguire correttamente il comando. - Per i dispositivi Windows, se è necessario memorizzare l'output del comando
ninjarmm-cli getin una variabile, è possibile utilizzare il parametro opzionale--direct-outper forzare l'uso del canale di output standardstdoutinvece delle funzioni API di Windows comeWriteConsoleW/WriteFile. Tuttavia, così facendo, si rischia di perdere il supporto dell'output Unicode, che non funziona correttamente su alcune versioni di Windows con il canalestdout. Fare riferimento al seguente esempio di questo comando:
ninjarmm-cli --direct-out get [nome campo]Accesso ai campi protetti tramite automazioni
Qualsiasi automazione eseguita dalla Libreria delle automazioni può accedere ai campi protetti, che includono:
- Condizioni di script
- Condizioni composte dello script
- Attività pianificate in base alle politiche
- Attività pianificate globali
- Azioni "Esegui prima" relative a backup, applicazione di patch, installazione dell'applicazione e attività simili
- Azioni "Esegui dopo" su backup, applicazione di patch, installazione dell'applicazione e attività simili
- Azioni di automazione in base alle condizioni
- Esegui automazione
Alcuni aspetti importanti da tenere in considerazione riguardo ai campi protetti includono:
- NinjaOne fornisce l'accesso ai campi personalizzati protetti solo durante l'esecuzione dell'automazione.
- Il terminale web o il terminale locale non possono accedere ai campi personalizzati protetti.
- Solo i comandi eseguiti su un dispositivo locale avviati da NinjaOne possono accedere ai campi personalizzati, incluse le operazioni GET e SET, i campi personalizzati protetti e i campi protetti della documentazione. Tuttavia, i campi protetti della documentazione utilizzano solo operazioni SET tramite la CLI.
Interazione con i campi personalizzati tramite CLI di Windows o terminale
L'agente decomprime automaticamente questo eseguibile nelle seguenti cartelle:
- Windows:
C:ProgramDataNinjaRMMAgentninjarmm-cli.exe - macOS:
/Applications/NinjaRMMAgent/programdata/ninjarmm-cli - Linux:
/opt/NinjaRMMAgent/programdata/ninjarmm-cli
Per Windows, utilizzare la seguente variabile d'ambiente speciale a livello di sistema:
- Windows:
%NINJARMMCLI%perC:ProgramDataNinjaRMMAgentninjarmm-cli.exe - Linux:
$NINJA_DATA_PATH/ninjarmm-cli set $fieldname $variable
La CLI di NinjaRMM è simile al seguente esempio per Windows:
c:ProgramDataNinjaRMMAgentninjarmm-cli.exe help
ninjarmm-cli - Strumento CLI per accedere e gestire i campi personalizzati di NinjaRMM Agent.
Utilizzo:
help - mostra questo testo
Campi globali e di ruolo:
get <nome attributo> - ottiene il valore dell'attributo con il nome specificato
set <nome attributo> <valore attributo e elenco di valori separati da virgola> - imposta il valore sull'attributo specificato
--stdin - modificatore opzionale per utilizzare dati in pipe. Ad esempio: dir | %NINJARMMCLI% set --stdin myfield
options <nome attributo> - ottiene l'elenco dei valori validi per il nome dell'attributo (utile per attributi a menu a tendina e a selezione multipla)
Campi della documentazione:
templates - ottiene un elenco dei modelli che contengono documenti e attributi
--ids, --names - modificatori opzionali
documents "<id/nome modello>" - ottiene un elenco dei documenti per il modello in base all'id o al nome (virgolette obbligatorie)
--ids, --names - modificatori opzionali
get "<id/nome modello>" "<nome documento>" <nome attributo> - ottiene l'attributo dal documento in base al nome del documento e all'id/nome del modello (virgolette obbligatorie)
get "<nome modello singolo>" <nome attributo> - recupera l'attributo da un singolo documento in base al nome del modello (virgolette obbligatorie)
org-set "<ID/nome modello>" "<nome documento>" <nome attributo> "<valore attributo e elenco di valori separati da virgole>" - imposta l'attributo sul documento/attributo specificato in base al nome del documento e all'ID/nome del modello (virgolette obbligatorie)
org-set "<nome del singolo modello>" <nome dell'attributo> "<valore dell'attributo e elenco di valori separati da virgole>" - imposta l'attributo su un singolo documento/attributo in base al nome del modello (virgolette obbligatorie)
org-clear "<ID/nome modello>" "<nome documento>" <nome attributo> - cancella il valore del documento in base al nome del documento e all'ID/nome del modello (virgolette obbligatorie, rappresenta un valore NULL)
org-clear "<nome modello singolo>" <nome attributo> - cancella il valore di un singolo documento in base al nome del modello (virgolette obbligatorie, rappresenta un valore NULL)
org-options "<ID/nome modello>" "<nome documento>" <nome attributo> - ottiene l'elenco dei valori validi per il nome dell'attributo del documento in base al nome del documento e all'ID/nome del modello (valido per attributi a menu a tendina e a selezione multipla)
org-options "<nome modello singolo>" <nome attributo> - ottiene un elenco dei valori validi per un singolo nome di attributo del documento in base al nome del modello (valido per attributi a discesa e a selezione multipla)
Formato di output:
codici di uscita: 0 - Successo, 1 - Errore
in caso di successo: esce con 0 e stampa il valore
in caso di errore: esce con 1 e stampa la descrizione dell'errore
per leggere il codice di uscita: Win: 'echo %errorlevel%', Unix: 'echo $?'
Tipi di attributi:
CheckBox - Tipo booleano, valori accettabili: 0, 1, true, false
Numeric - Tipo intero, valori compresi tra -2147483648 e 2147483647, supporta le impostazioni del filtro di input avanzato.
Decimale - Tipo float, valori compresi tra -9999999.999999 e 9999999.999999, supporta le impostazioni del filtro di input avanzato.
TextMultiLine, Text - stringa regolare
TextEmail - stringa regolare, deve corrispondere al formato e-mail RFC 5322
TextIpAddress - stringa regolare, deve corrispondere al formato IPv4 o IPv6, supporta le impostazioni del filtro di input avanzato
TextPhone - stringa regolare, deve corrispondere al formato del numero di telefono E.164
TextEncrypted - stringa crittografata regolare, supporta le impostazioni del filtro di input avanzato (sola scrittura per la documentazione)
DateTime - Numero intero di secondi dall'inizio dell'epoca Unix o formato ISO 'yyyy-MM-ddTHH:mm:ss' senza fuso orario (UTC)
Date - Numero intero di secondi dall'inizio dell'epoca Unix o formato ISO 'yyyy-MM-dd'
Time - Numero intero di secondi o formato ISO 'HH:mm:ss'
MultiSelect - elenco di opzioni univoche (vedere il comando <options>)
MultiSelectNode, MultiSelectClient, MultiSelectClientLocation - (sola lettura tramite CLI) dati relativi all'organizzazione
Menu a tendina - un'unica opzione (vedere il comando <options>)
DropdownNode, DropdownClient, DropdownClientLocation - (sola lettura tramite CLI) dati relativi all'organizzazione
Allegato - (sola lettura tramite CLI) oggetto JSON con informazioni sul file.
WYSIWYG - (sola lettura tramite CLI) oggetto JSON con contenuto HTML e TEXTModulo NinjaOne PowerShell
Quando si installa l'agente NinjaOne, NinjaOne distribuisce e carica un modulo PowerShell NinjaOne personalizzato per interagire con i campi personalizzati. È possibile accedere a ninjarmm-cli sui dispositivi Windows tramite questo modulo PowerShell semplicemente richiamando i nomi delle funzioni all'interno di PowerShell.
Comandi PowerShell di NinjaOne
I comandi PowerShell che è possibile eseguire sono descritti in dettaglio di seguito.
Get-NinjaProperty
Il comando Get-NinjaProperty è un'evoluzione del comando originale Ninja-Property-Get. La funzione Get-NinjaProperty recupera e converte un valore di campo personalizzato Ninja in base al nome e al tipo di campo specificati.
Il comando accetta un nome di campo, un tipo di proprietà e un nome di documento opzionale. Quando si fornisce un nome di documento, la funzione recupererà il valore della proprietà dal documento Ninja specificato. A seconda del tipo specificato (ad esempio, Date, DateTime, Checkbox, Dropdown, ecc.), la funzione convertirà il valore grezzo in un oggetto PowerShell appropriato. Se il tipo di proprietà richiede opzioni aggiuntive come menu a tendina o campi a selezione multipla, la funzione recupera queste opzioni e restituisce un valore di facile utilizzo.
I tipi supportati includono: Allegato, Casella di controllo, Data, Data e ora, Decimale, Menu a tendina dispositivo, Selezione multipla dispositivo, Menu a tendina, E-mail, Intero, Indirizzo IP, Multiriga, Selezione multipla, Menu a tendina organizzazione, Menu a tendina sede organizzazione, Selezione multipla sede organizzazione, Selezione multipla organizzazione, Telefono, Sicuro, Testo, Ora, WYSIWYG e URL.
La sintassi è la seguente: Get-NinjaProperty [-Name] <String[]> [[-Type] <String>] [[-DocumentName] <String>] [<CommonParameters>]
Esempi
Il recupero di un menu a tendina di un campo personalizzato senza specificare il tipo restituisce il valore GUID dell'opzione selezionata nel menu a tendina.
Il recupero di un menu a discesa di un campo personalizzato specificando il tipo di campo personalizzato (menu a discesa) fa sì che il comando restituisca il valore intuitivo visualizzato all'interno della piattaforma invece del valore GUID.
Set-NinjaProperty
Il comando Set-NinjaProperty è un'evoluzione del comando originale Ninja-Property-Set. La funzione Set-NinjaProperty imposta un campo personalizzato in base ai parametri forniti. Quando viene specificato un tipo di campo, tenta di convertire il valore fornito in uno supportato da quel particolare campo. Ad esempio, quando viene fornito un oggetto DateTime e viene specificato il tipo "Date", converte l'oggetto data in un timestamp dell'epoca Unix e imposta il campo con quel valore.
Può anche impostare campi a discesa e a selezione multipla utilizzando i nomi dei campi anziché i loro GUID.
I tipi supportati includono: Checkbox, Date, Date o Date Time, DateTime, Decimal, Dropdown, Email, Integer, IP Address, MultiLine, MultiSelect, Phone, Secure, Text, Time, URL e WYSIWYG.
Esempi
L'impostazione di un campo personalizzato a tendina senza specificare il tipo di campo richiede il valore GUID univoco per l'opzione a tendina desiderata.
L'impostazione di un campo personalizzato a menu a tendina specificando il tipo di campo come menu a tendina consente di utilizzare il valore intuitivo visualizzato all'interno della piattaforma invece del valore GUID.
Entrambi i comandi, Get-NinjaProperty e Set-NinjaProperty, supportano pienamente Unicode, consentendo di impostare e recuperare le emoji tramite questi comandi.
È possibile accedere a ulteriori dettagli ed esempi per entrambi i comandi aprendo PowerShell su un dispositivo con l'agente NinjaOne installato e digitando:
Get-Help Get-NinjaPropertyOppure
Get-Help Set-NinjaPropertyTutti i comandi PowerShell originali di NinjaOne funzionano ancora come previsto in origine. Tali comandi sono:
Ninja-Property-Get $AttributeName
Ninja-Property-Set $AttributeName $Value
Ninja-Property-Options $AttributeName
Ninja-Property-Clear $AttributeNameComandi di documentazione
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 - cancella il valore di un singolo documento in base al nome del modello (virgolette obbligatorie, rappresentato come NULL)
Ninja-Property-Docs-Options-Single - ottiene l'elenco dei valori validi per il nome di un singolo attributo del documento in base al nome del modello (valido per attributi a discesa e a selezione multipla)Interazione con i campi personalizzati tramite comandi CLI di Windows, script batch personalizzati, ShellScript su UNIX o script personalizzati ShellScript
Gli esempi in questa sezione mostrano come utilizzare comandi e script batch per tipi specifici di campi personalizzati. Descrivono chiamate a ninjarmm-cli senza un percorso completo, ma è possibile specificare il percorso completo in base alla propria piattaforma, come descritto in precedenza in questo articolo. Non ci sono differenze tra le chiamate all'utilità CLI su piattaforme diverse.
Timestamp
L'ora viene calcolata come segue:
- Il sistema fa riferimento al 1° gennaio 1970 alle 00:00:00 UTC come epoca Unix.
- Il valore della data è espresso in secondi a partire dal 1° gennaio 1970 alle 00:00:00 UTC.È possibile utilizzare uno strumento di conversione del timestamp per ottenere questo valore in una data leggibile dall'utente.
- Se si imposta il valore in formato ISO, verrà convertito in secondi a partire dal 1° gennaio 1970 in UTC.
Gli esempi in questa sezione mostrano come utilizzare i comandi o gli script di PowerShell per tipi specifici di campi personalizzati.
Selezionare un argomento per continuare:
- Casella di controllo
- Data
- Data/Ora
- Decimale
- Menu a tendina
- Integro
- Indirizzo IP
- Selezione multipla
- Selezione multipla
- Numero di telefono
- Protezione
- Testo
- Ora
- URL
- Campi della documentazione
Casella di controllo
Get:
# ottieni il valore del campo casella di controllo
> ninjarmm-cli get globalcheckbox
0Imposta:
# imposta un valore booleano nel campo casella di controllo
> ninjarmm-cli set globalcheckbox 0
0
> ninjarmm-cli set globalcheckbox 1
1
> ninjarmm-cli set globalcheckbox true
1
> ninjarmm-cli set globalcheckbox false
0Data
Ottenere:
# recupera il valore del campo data
> ninjarmm-cli get globaldate
456Imposta:
# imposta valore nel campo data
> ninjarmm-cli set globaldate 1626875470000
> ninjarmm-cli set testdate 2021-10-15
1634256000Data/Ora
Ottenere:
# recupera il valore del campo data-ora
> ninjarmm-cli get globaldatetime
1626875470000Imposta:
# imposta il valore nel campo data-ora
> ninjarmm-cli set globaldatetime 1626875470000
1626875470000
> ninjarmm-cli set testdatetime 2021-10-15T00:00:00
1634256000Decimale
Ottenere:
# ottieni il valore per il campo decimale
> ninjarmm-cli get globaldecimal
123.456Imposta:
# imposta valore nel campo decimale
> 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 # troncato alla precisione massima, è meglio non utilizzare un valore più breve per evitare problemi di conversione del tipo di dati
> ninjarmm-cli set typedecimal 1234567890.1234567890
1234567890.123457Menu a tendina
Opzioni:
# elenco delle opzioni per il campo a discesa
> ninjarmm-cli options globaldropdown
333f541e-747e-4a1e-a2e2-a82c1c2f2008=Option2
74a6ffda-708e-435a-86e3-40b67c4f981a=Opzione1
f1ba449c-fd34-49df-b878-af3877180d17=Opzione3Ottenere il GUID in base al nome dell'opzione:
# trova il GUID dell'opzione in base al nome dell'opzione per il campo a discesa
> ninjarmm-cli options globaldropdown | grep "Opzione 1" | awk -F= '{print $1}'
74a6ffda-708e-435a-86e3-40b67c4f981aOttenere:
# ottenere il valore per il campo a discesa
> ninjarmm-cli get globaldropdown
74a6ffda-708e-435a-86e3-40b67c4f981aImposta:
# imposta il valore nel campo a discesa
> ninjarmm-cli set globaldropdown f1ba449c-fd34-49df-b878-af3877180d17Ottieni:
# recupera il valore memorizzato
> ninjarmm-cli get typeemail
[email protected]Imposta:
# correggere i valori
> ninjarmm-cli set typeemail [email protected]
[email protected]
> ninjarmm-cli set typeemail [email protected]
[email protected]
# impostare valori errati
> ninjarmm-cli set typeemail [email protected]
Errore: formato o tipo di valore errato...Intero
Ottenere:
# recupera il valore per il campo intero
> ninjarmm-cli get globalinteger
456Imposta:
# imposta il valore nel campo intero
> ninjarmm-cli set globalinteger 123Indirizzo IP
Ottenere:
# recupera il valore memorizzato
> ninjarmm-cli get typeipaddress
192.168.1.100Imposta:
# imposta valori corretti
> ninjarmm-cli set typeipaddress 255.255.255.255
255.255.255.255
> ninjarmm-cli set typeipaddress 0.0.0.0
0.0.0.0
# imposta valori errati
> ninjarmm-cli set typeipaddress 192.168.1.
Errore: formato/tipo di valore errato ...
> ninjarmm-cli set typeipaddress 255.255.255.256
Errore: formato/tipo di valore errato ...
> ninjarmm-cli set typeipaddress 0.-1.0.0
Errore: formato/tipo di valore errato ...Multiriga
Ottenere:
# get campo multilinea
> ninjarmm-cli get globalmultiline
sampletext1Imposta:
# imposta campo di testo
> ninjarmm-cli set globalmultiline sampletext2
Imposta (alternativa):
# imposta campo di testo con dati in pipe
> ls -alh | ninjarmm-cli set globalmultilineNinjaOne supporta l'uso di una singola stringa multilinea se si utilizza il carattere di controllo `n (il tasto "backtick" o "backspark" più la lettera "n"). Il testo deve essere inserito nel prompt dei comandi come una singola riga di testo a causa delle restrizioni della CLI o del terminale ed è limitato a 10.000 caratteri. È inoltre possibile incorporare spazi inserendo l'intera stringa tra virgolette. Quando si utilizzano questi caratteri di controllo, i dati verranno visualizzati come segue:
Ninja-Property-Set multiline "linea con spazi'nlinea2'nlinea3'nvalorefinale"
multiline
linea con spazi
linea2
linea3
valore finaleLa sintassi predefinita del comando "Set" è sufficiente nella maggior parte dei casi. Con la sintassi predefinita, lo strumento 'ninjarmm-cli' preleva i dati dagli argomenti della riga di comando. Tuttavia, a volte ciò non è sufficiente ed è necessario ottenere i dati dal canale stdin (input standard).
Ad esempio, quando è necessario impostare i dati nel campo di testo multilinea , oppure si desidera ottenere l'output dal file e memorizzarlo nel campo. Oppure, per evitare l'interruzione di tabulazioni o spazi nell'output formattato di altre applicazioni.
A tal fine, lo strumento CLI fornisce una sintassi alternativa con il parametro --stdin. Pertanto, quando si utilizza questo argomento, è necessario fornire i dati come input sul canale stdin, utilizzando i pipe di Unix. Ad esempio: dir | ninjarmm-cli set --stdin [nome del mio campo] oppure cat /proc/cpuinfo | grep vendor_id | ninjarmm-cli set --stdin [nome di un altro campo]. I dati inviati tramite pipe verranno memorizzati nel campo di destinazione se soddisfano tutte le condizioni relative al tipo di campo.
Selezione multipla
Opzioni:
# elenco delle opzioni per il campo a selezione multipla
> ninjarmm-cli options globalmultiselect
333f541e-747e-4a1e-a2e2-a82c1c2f2008=Opzione2
74a6ffda-708e-435a-86e3-40b67c4f981a=Opzione1
f1ba449c-fd34-49df-b878-af3877180d17=Opzione3Ottenere il GUID in base al nome dell'opzione:
# trova il GUID dell'opzione in base al nome dell'opzione per il campo a selezione multipla
> ninjarmm-cli options globalmultiselect | grep "Opzione 1" | awk -F= '{print $1}'
74a6ffda-708e-435a-86e3-40b67c4f981aImposta:
# imposta più valori per il campo a selezione multipla, separati da virgola
> ninjarmm-cli set globalmultiselect 333f541e-747e-4a1e-a2e2-a82c1c2f2008,74a6ffda-708e-435a-86e3-40b67c4f981aOttenere:
# recupera i valori per il campo a selezione multipla
> ninjarmm-cli get globalmultiselect
333f541e-747e-4a1e-a2e2-a82c1c2f2008, 74a6ffda-708e-435a-86e3-40b67c4f981aNumero di telefono
Ottieni:
# recupera il valore memorizzato
ninjarmm-cli get typephone
+1234567890Imposta:
# imposta i valori corretti
> ninjarmm-cli set typephone +77013273916
+77013273916
> ninjarmm-cli set typephone 123456789012344567
123456789012344567
> ninjarmm-cli set typephone +123456789012344567
+123456789012344567
# imposta valori errati
> ninjarmm-cli set typephone 14953273916qwerty
Errore: formato / tipo di valore errato ...
> ninjarmm-cli set typephone 1234567890123445678 # troppo lungo
Errore: formato / tipo di valore errato ...
> ninjarmm-cli set typephone ++123456789012344567
Errore: formato / tipo di valore errato ...Sicurezza
Per impedire che i valori dei campi sicuri vengano visualizzati nell'output dello script per i dispositivi Windows, lo script dovrebbe contenere @echo off e @echo on attorno al codice che chiama %NINJARMMCLI% set [nome campo sicuro] [valore sicuro]. Per impostazione predefinita, Windows ripete tutti i comandi che gli utenti immettono o eseguono.
Per impedire che i valori dei campi protetti vengano visualizzati nell'output dello script per i dispositivi Unix (macOS o Linux), lo script non deve contenere set -x prima dell'esecuzione. Questa omissione impedisce la visualizzazione dei comandi eseguiti che contengono valori protetti.
Ottenere:
# get secure field
> ninjarmm-cli get globalsecure
sampletext1Imposta:
# imposta campo protetto
> ninjarmm-cli set globalsecure sampletext2Testo
Ottieni:
# ottieni campo di testo
> ninjarmm-cli get globaltext
sampletext1Imposta:
# imposta campo di testo
> ninjarmm-cli set globaltext sampletext2Ora
Recupera:
# recupera il valore del campo ora
> ninjarmm-cli get globaldatetime
120Imposta:
# imposta il valore nel campo Ora
> ninjarmm-cli set globaldatetime 3600
3600
> ninjarmm-cli set testdatetime 00:00:00
0URL
Il campo URL è limitato a 200 caratteri e deve iniziare con https://.
Recupera:
# recupera il campo URL
> ninjarmm-cli get url
https://www.google.comImposta:
# imposta campo URL
> ninjarmm-cli set url https://www.ninjarmm.comCampi della documentazione
Recupera:
# recupera l'elenco dei modelli
> ninjarmm-cli templates
1=modello 1
2=modello 2
# recupera l'elenco dei documenti in base all'ID del modello
> ninjarmm-cli documents 2
16=modello 2
# recupera l'elenco dei documenti in base al nome del modello
> ninjarmm-cli documents "modello 2"
16=modello 2
# recupera il valore del campo dal documento
> ninjarmm-cli get "template 2" "template 2" fieldname
Questo è il valore del campoImposta:
# imposta l'attributo sul documento/attributo specificato in base al nome del documento e all'ID/nome del modello (virgolette obbligatorie)
> ninjarmm-cli org-set "modello 2" "ExampleDoc" ExampleTextField "SampleText1"
# imposta l'attributo su un singolo documento/attributo in base al nome del modello (virgolette obbligatorie)
> ninjarmm-cli org-set "template 2" ExampleTextField "SampleText1"
# cancella il valore del documento in base al nome del documento e all'ID/nome del modello (virgolette obbligatorie, rappresentato come NULL)
> ninjarmm-cli org-clear "template 2" "ExampleDoc" ExampleTextField
# cancella il valore di un singolo documento in base al nome del modello (virgolette obbligatorie, rappresentato come NULL)
> ninjarmm-cli org-clear "template 2" ExampleTextFieldOpzioni:
# ottieni l'elenco dei valori validi per il nome dell'attributo del documento in base al nome del documento e all'ID/nome del modello (valido per attributi a discesa e a selezione multipla)
> ninjarmm-cli org-options "template 2" "ExampleDoc" ExampleTextField
# ottenere l'elenco dei valori validi per un singolo nome di attributo del documento in base al nome del modello (valido per attributi a discesa e a selezione multipla)
> ninjarmm-cli org-options "template 2" ExampleTextFieldInterazione con i campi personalizzati tramite comandi PowerShell o script personalizzati
Gli esempi in questa sezione mostrano come utilizzare i comandi o gli script PowerShell per tipi specifici di campi personalizzati. Utilizza i link sottostanti per accedere agli script che desideri esaminare:
- Casella di controllo
- Data
- Data/Ora
- Decimale
- Menu a tendina
- Integro
- Indirizzo IP
- Selezione multipla
- Selezione multipla
- Numero di telefono
- Protezione
- Testo
- Ora
- URL
- Campi della documentazione
Casella di controllo
Get:
# ottieni il valore del campo casella di controllo
> Ninja-Property-Get globalcheckbox
0Imposta:
# imposta un valore booleano nel campo casella di controllo
> Ninja-Property-Set globalcheckbox 0
0
> Ninja-Property-Set globalcheckbox 1
1
> Ninja-Property-Set globalcheckbox true
1
> Ninja-Property-Set globalcheckbox false
0Data
Get:
# recupera il valore del campo data
> Ninja-Property-Get globaldate
456Imposta:
# imposta valore nel campo data
> Ninja-Property-Set globaldate 1626875470000
> Ninja-Property-Set testdate 2021-10-15
1634256000Data/Ora
Get:
# ottenere il valore del campo data-ora
> Ninja-Property-Get globaldatetime
1626875470000Imposta:
# imposta il valore nel campo data-ora
> Ninja-Property-Set globaldatetime 1626875470000
1626875470000
> Ninja-Property-Set testdatetime 2021-10-15T00:00:00
1634256000Decimale
Get:
# recupera il valore per il campo decimale
> Ninja-Property-Get globaldecimal
123,456Imposta:
# imposta valore nel campo decimale
> 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 # troncato alla massima precisione, meglio non usare una precisione maggiore per evitare problemi di conversione del tipo di dati
> Ninja-Property-Set typedecimal 1234567890.1234567890
1234567890.123457Menu a tendina
Opzioni:
# elenco delle opzioni per il campo a tendina
> Ninja-Property-Options globaldropdown
333f541e-747e-4a1e-a2e2-a82c1c2f2008=Option2
74a6ffda-708e-435a-86e3-40b67c4f981a=Opzione1
f1ba449c-fd34-49df-b878-af3877180d17=Opzione3Ottenere il GUID dell'opzione in base al nome dell'opzione:
# trova il GUID dell'opzione in base al nome dell'opzione per il campo a discesa
> Ninja-Property-Get globaldropdown | grep "Option1" | awk -F= '{print $1}'
74a6ffda-708e-435a-86e3-40b67c4f981aOttenere:
# ottenere il valore per il campo a discesa
> Ninja-Property-Get globaldropdown
74a6ffda-708e-435a-86e3-40b67c4f981aImposta:
# imposta il valore nel campo a tendina
> Ninja-Property-Set globaldropdown f1ba449c-fd34-49df-b878-af3877180d17Ottieni:
# recupera il valore memorizzato
> Ninja-Property-Get typeemail
[email protected]Imposta:
# correggere i valori
> Ninja-Property-Set typeemail [email protected]
[email protected]
> Ninja-Property-Set typeemail [email protected]
[email protected]
# impostare valori errati
> Ninja-Property-Set typeemail [email protected]
Errore: formato/tipo di valore errato ...Intero
Per il campo Integer, il valore impostato deve essere un numero intero (un numero intero senza decimali) compreso tra -2147483648 e 2147483647.
Get:
# recupera il valore per il campo intero
> Ninja-Property-Get globalinteger
456Imposta:
# imposta valore nel campo intero
> Ninja-Property-Set globalinteger 123Indirizzo IP
Per il campo IP , il valore impostato deve essere in formato IPv4 (Internet Protocol versione 4) o IPv6 (Internet Protocol versione 6).
Get:
# recupera il valore memorizzato
> Ninja-Property-Get typeipaddress
192.168.1.100Imposta:
# imposta valori corretti
> Ninja-Property-Set typeipaddress 255.255.255.255
255.255.255.255
> Ninja-Property-Set typeipaddress 0.0.0.0
0.0.0.0
# imposta valori errati
> Ninja-Property-Set typeipaddress 192.168.1.
Errore: formato/tipo di valore errato ...
> Ninja-Property-Set typeipaddress 255.255.255.256
Errore: formato/tipo di valore errato ...
> Ninja-Property-Set typeipaddress 0.-1.0.0
Errore: formato/tipo di valore errato ...Multiriga
A causa delle restrizioni della CLI o del terminale, il testo deve essere inserito nel prompt dei comandi su una singola riga ed è limitato a 10.000 caratteri.
Get:
# get campo di testo
> Ninja-Property-Get globaltext
sampletext1Imposta:
# imposta campo di testo
>Ninja-Property-Set globaltext sampletext2Selezione multipla
Opzioni:
# elenco delle opzioni per il campo a selezione multipla
> Ninja-Property-Options globalmultiselect
333f541e-747e-4a1e-a2e2-a82c1c2f2008=Option2
74a6ffda-708e-435a-86e3-40b67c4f981a=Opzione1
f1ba449c-fd34-49df-b878-af3877180d17=Opzione3Ottenere il GUID dell'opzione in base al nome dell'opzione:
# trova il GUID dell'opzione in base al nome dell'opzione per il campo a selezione multipla
> Ninja-Property-Options globalmultiselect | grep "Opzione 1" | awk -F= '{print $1}'
74a6ffda-708e-435a-86e3-40ba67c4f981aImposta:
# imposta più valori per il campo a selezione multipla, separati da virgola
> Ninja-Property-Set globalmultiselect 333f541e-747e-4a1e-a2e2-a82c1c2f2008,
74a6ffda-708e-435a-86e3-40b67c4f981aGet:
# recupera i valori per il campo a selezione multipla
> Ninja-Property-Get globalmultiselect
333f541e-747e-4a1e-a1e2-a82c1c2f2008, 74a6ffda-708e-435a-86e3-40b67c4f981aNumero di telefono
Ottieni:
# recupera il valore memorizzato
Ninja-Property-Get typephone
+1234567890Imposta:
# imposta valori corretti
> Ninja-Property-Set typephone +77013273916
+77013273916
> Ninja-Property-Set typephone 123456789012344567
123456789012344567
> Ninja-Property-Set typephone 123456789012344567
123456789012344567
> Ninja-Property-Set typephone +123456789012344567
+123456789012344567
# impostazione di valori errati
> Ninja-Property-Set typephone 14953273916qwerty
Errore: formato/tipo di valore errato ...
> Ninja-Property-Set typephone 14953273916qwerty
Errore: formato/tipo di valore errato ...
> Ninja-Property-Set typephone 1234567890123445678 # troppo lungo
Errore: formato/tipo di valore errato ...
> Ninja-Property-Set typephone ++123456789012344567
Errore: formato/tipo di valore errato ...Sicuro
Get:
# recupera campo sicuro
> Ninja-Property-Get globalsecure
sampletext1Imposta:
# imposta campo sicuro
>Ninja-Property-Set globalsecure sampletext2Testo
Ottieni:
# ottieni campo testo
> Ninja-Property-Get globaltext
sampletext1Imposta:
# imposta campo di testo
>Ninja-Property-Set globaltext sampletext2Ora
Per il campo Ora , il valore impostato deve essere espresso in secondi o in formato ISO (hh:mm:ss).
Ottieni:
# recupera il valore del campo ora
> Ninja-Property-Get globaldatetime
120Imposta:
# imposta il valore nel campo ora
> Ninja-Property-Set globaldatetime 3600
3600
> Ninja-Property-Set testdatetime 00:00:00
0URL
Il campo URL è limitato a 200 caratteri e deve iniziare con "https://'".
Get:
# recupera il campo URL
> Ninja-Property-Get url
https://www.google.comImposta:
# imposta campo URL
>Ninja-Property-Set url https://www.google.comCampi della documentazione
Recupera:
# ottieni elenco modelli
> Ninja-Property-Docs-Templates
1=modello 1
2=modello 2
# ottieni elenco documenti per ID modello
> Ninja-Property-Docs-Names 2
16=modello 2
# ottieni elenco documenti per nome modello
> Ninja-Property-Docs-Names "modello 2"
16=modello 2
# recupera il valore del campo dal documento
> Ninja-Property-Docs-Get "modello 2" "modello 2" nome_campo
Questo è il valore del campoImposta:
# imposta l'attributo sul documento/attributo specificato in base al nome del documento e all'ID/nome del modello (virgolette obbligatorie)
> Ninja-Property-Docs-Set 2 "ExampleDoc" ExampleTextField
# imposta l'attributo su un singolo documento/attributo in base al nome del modello (virgolette obbligatorie)
> Ninja-Property-Docs-Set-Single "modello 2" ExampleTextField "sampletext1"
# cancella il valore del documento in base al nome del documento e all'ID/nome del modello (virgolette obbligatorie, rappresentato come NULL)
> Ninja-Property-Docs-Clear "modello 2" "ExampleDoc" ExampleTextField
# cancella il valore di un singolo documento in base al nome del modello (virgolette obbligatorie, rappresentato come NULL)
> Ninja-Property-Docs-Clear-Single "modello 2" ExampleTextFieldOpzioni:
# ottieni l'elenco dei valori validi per il nome dell'attributo del documento in base al nome del documento e all'ID/nome del modello (valido per attributi a discesa e a selezione multipla)
> Ninja-Property-Docs-Options "template 2" "ExampleDoc" ExampleTextField
# ottenere l'elenco dei valori validi per un singolo nome di attributo del documento in base al nome del modello (valido per attributi a discesa e a selezione multipla)
> Ninja-Property-Docs-Options-Single "template 2" ExampleTextFieldRisorse aggiuntive
Per ulteriori informazioni sulla documentazione, i campi personalizzati, la CLI e lo scripting, consultare i seguenti articoli:
Interfaccia a riga di comando (CLI)
Utilizzo dell'interfaccia della riga di comando (CLI) in NinjaOne.
Documentazione e campi personalizzati
- Campi personalizzati di NinjaOne: Catalogo delle risorse.
- Guida introduttiva ai campi personalizzati di NinjaOne.
- Documentazione NinjaOne: App e servizi.
Scripting