Argomento
Questo articolo fornisce una spiegazione delle variabili di script e indicazioni su come utilizzarle.
Ambiente
Automazione e scripting di NinjaOne
Descrizione
Seleziona un'opzione per saperne di più:
- Cosa sono i tipi di variabili?
- Utilizzo di una variabile nell'editor di script
- Visualizzazione di uno script con variabili
- Invio delle variabili dello script a un agente
- Risorse aggiuntive
Cosa sono i tipi di variabili?
Quando si creano script nella Libreria di automazione, è possibile aggiungere diversi tipi di variabili di script che influenzano il modulo interattivo visualizzato durante l'esecuzione dello script. Le variabili sono supportate in Batch, PowerShell, ShellScript e VBScript.
Consultare la tabella sottostante per una breve spiegazione di ciascun tipo di variabile.
| Tipo di variabile | Descrizione |
|---|---|
| Stringa/Testo | Utilizzata per qualsiasi cosa che richieda una combinazione di lettere, numeri e/o caratteri. Esempi includono nomi utente, URL e frasi. Nota importante: non è possibile utilizzare i seguenti caratteri speciali: Å Ä Ö &|;$><`! |
| Numero intero | Utilizzato per qualsiasi cosa che richieda un numero intero senza decimali. |
| Decimale | Utilizzato per qualsiasi elemento che richieda un numero con la virgola decimale (ad es. 3,145). |
| Casella di controllo | Utilizzata per qualsiasi cosa che richieda un valore vero o falso. |
| Data | Utilizzato per qualsiasi elemento che richieda la rappresentazione di una data. Nota importante: lo script utilizza il formato ISO 8601. |
| Data/Ora | Utilizzato per qualsiasi elemento che richieda la rappresentazione di una data e un'ora. Nota importante: lo script utilizza il formato ISO 8601. |
| Menu a tendina | Utilizzato per qualsiasi elemento che richieda una scelta con più opzioni. |
| Indirizzo IP | Utilizzato per qualsiasi elemento che richieda la rappresentazione di un indirizzo IP. |
Utilizzo di una variabile nell'Editor di script
Una volta impostate le variabili desiderate sul lato destro dell'editor di script, è possibile utilizzarle all'interno dello script premendo CTRL + Spazio sulla tastiera e selezionando l'opzione dalla finestra a comparsa che si apre. Passare il mouse sulla variabile per visualizzarne la descrizione e cliccarci sopra per inserirla nello script.

Figura 1: Pagina degli script di NinjaOne → Aggiungere e utilizzare le variabili (clicca per ingrandire)
È inoltre possibile inserire le variabili manualmente facendo riferimento al loro nome così come appare nella casella di immissione a destra.
Linguaggi di scripting diversi richiedono input diversi per fare riferimento alla variabile: vedere la tabella sottostante per alcuni esempi.
| Linguaggio di scripting | Esempio di riferimento |
|---|---|
| PowerShell | $env:<nomevariabile> |
| Batch | %<nomeVariabile>% |
| VBScript | <nomeVariabile> = CreateObject("WScript.Shell").ExpandEnvironmentStrings("%nomeVariabile%") |
| ShellScript | $<nomeVariabile> |
Si noti che tutte le variabili sono impostate come stringhe nel codice che si sta scrivendo, pertanto potrebbe essere necessario convertire o castare i valori. Si prega di consultare la sezione sull'esecuzione degli script per vedere i valori che vengono inviati e il loro formato.
Visualizzazione di uno script con variabili
Le variabili vengono visualizzate in modo diverso a seconda delle selezioni effettuate nell'editor di script. Di seguito è riportato un esempio di come appaiono le diverse variabili in uno script pronto per l'esecuzione su un dispositivo.
Si noti che se una variabile è stata contrassegnata come obbligatoria, accanto al nome della variabile viene visualizzato un asterisco (*). Se questo campo non viene compilato dall'utente che esegue lo script, o se non è stato fornito un valore predefinito, lo script non verrà eseguito: il campo obbligatorio diventerà rosso e agli utenti verrà richiesto di inserire un valore per procedere.

Figura 2: Esempio di campi variabili in uno script NinjaOne
Invio delle variabili dello script a un agente
Note importanti:
- Le variabili dello script inviate vuote (senza alcun valore aggiunto) vengono sempre inviate come stringa vuota. Si consiglia di verificare la presenza di un valore vuoto se non si è contrassegnata una variabile dello script come obbligatoria.
- Le variabili dello script inviate all'agente non sono fortemente tipizzate. Tutti i valori saranno inviati come stringa. Se si desidera convertirli in un determinato tipo, sarà necessario farlo nel proprio codice.
Alcuni linguaggi consentono di convertire le stringhe in oggetti fortemente tipizzati nel codice. Ad esempio, PowerShell può convertire in data/ora come segue:
$Test1 = [datetime]$ENV:Test1È possibile convertire in un valore booleano come segue:
$Test2 = [System.Boolean]::Parse($ENV:Test2)Esistono alcune semplici regole che il motore di script segue quando invia variabili di script a un agente:
| Tipo di variabile | Regola del motore di script |
|---|---|
| Stringa/Testo | Inviata esclusivamente come stringa inserita (ad es. “Hello World”). |
| Numero intero | Inviato come numero intero (ad es. "314"). |
| Decimale | Inviato come numero in virgola mobile (ad es. "3,14"). |
| Casella di controllo | Se selezionate, le caselle di controllo vengono inviate come valore stringa "true". Se deselezionate, le caselle di controllo vengono inviate come valore stringa "false". |
| Data | Inviata come stringa formattata secondo lo standard ISO 8601 nel formato AAAA-MM-ggT00:00:00.000+00:00 |
| Data/Ora | Inviata come stringa formattata ISO 8601 nel formato AAAA-MM-ggTHH:MM:SS.SSSZ (ad es. 2023-07-28T03:00:00.000+01:00). |
| Menu a tendina | Inviato come stringa del valore selezionato. |
| Indirizzo IP | Inviato come stringa dell'indirizzo IP inserito. |