Condividi tramite


Azioni di scripting

Importante

Per impedire l'accesso non autorizzato, Windows richiede diritti di amministratore per accedere a risorse protette. Per accedere a risorse protette (come i file) utilizzando azioni di scripting, eseguire Power Automate con diritti di amministratore. Per maggiori informazioni sull'esecuzione di Power Automate come amministratore, vai a Eseguire Power Automate con diritti elevati.

Le azioni di scripting ti consentono di eseguire blocchi di codice e implementare comportamenti personalizzati nel tuo flusso desktop.

Importante

Come annunciato a ottobre 2023, VBScript è deprecato da Windows. Nelle versioni future di Windows, VBScript sarà disponibile come funzionalità su richiesta prima della sua rimozione dal sistema operativo. Per ulteriori informazioni, vedi Risorse per funzionalità deprecate.

Tutte le azioni di scripting seguono la struttura di base del rispettivo linguaggio di programmazione o scripting: PowerShell, Python, VBScript, JavaScript e C#/VB.NET.

Nota

Versione supportata per C#: v 5.0. Per VB.NET: v 11.0

Dal linguaggio naturale allo script basato sul copilota (anteprima)

[Questo argomento fa parte della documentazione di pre-rilascio, pertanto è soggetto a modifiche.]

Il linguaggio naturale per la codifica è una nuova funzionalità copilota aggiunta in Power Automate per desktop. Ti consente di generare rapidamente il codice utilizzato nelle azioni di scripting descrivendolo. Questa funzionalità è disponibile nelle seguenti azioni di scripting:

  • Eseguire PowerShell
  • Eseguire VBScript
  • Eseguire comando DOS
  • Eseguire Python
  • Eseguire JavaScript

Importante

  • Questa è una funzionalità di anteprima.
  • Le funzionalità di anteprima non sono destinate ad essere utilizzate per la produzione e sono soggette a restrizioni. Queste funzionalità sono disponibili prima di una versione ufficiale di modo che i clienti possano ottenere un accesso prioritario e fornire dei commenti.

Disponibilità per regione

Attualmente, Copilot Power Automate per desktop è disponibile solo in ambienti con sede negli Stati Uniti.

Disponibilità per tipo di account

Attualmente, Copilot in Power Automate per desktop è disponibile solo per gli utenti con un account aziendale o dell'istituto di istruzione.

Nota

Se il tuo ambiente si trova nella regione sopra elencata e hai comunque bisogno di vedere il copilota in Power Automate per l'esperienza desktop, contatta l'amministratore del tenant. Potrebbero aver disattivato la funzionalità del copilota.

Come generare script utilizzando il copilota e il linguaggio naturale

Per generare script in una delle azioni di scripting supportate, trascina e rilascia l'azione nella finestra di progettazione e seleziona Genera script con Copilot.

Screenshot dell'azione Esegui PowerShell con il pulsante Genera script con Copilot evidenziato

Si apre la schermata di creazione della richiesta in cui è possibile digitare la richiesta in linguaggio naturale.

Screenshot dell'azione Genera PowerShell con la finestra di dialogo della richiesta aperta

Per creare uno script, scrivi la tua richiesta e seleziona Genera. Se è necessario ricrearla, è possibile modificare la richiesta e selezionare Rigenerare. Altrimenti seleziona Usa questo script per tornare alla finestra principale dell'azione, dove è possibile modificarla e aggiungere le variabili necessarie.

Screenshot dell'azione usa questo script PowerShell con la finestra di dialogo della richiesta aperta

Importante

Assicurati di rivedere sempre il contenuto generato dal modello di IA.

Aiutaci a migliorare questa funzionalità

Invia feedback selezionando l'icona pollice su o pollice giù sotto il contenuto generato dall'intelligenza artificiale. Al termine, viene visualizzata una finestra di dialogo di feedback che puoi utilizzare per inviare feedback a Microsoft. GIF animata che mostra il copilota che risponde alla domanda dell'utente posta dalla finestra di progettazione.

Nota

Se non riesci a visualizzare la finestra di dialogo, l'amministratore del tenant potrebbe averla disattivata. Maggiori informazioni: Disabilitare la funzionalità di feedback degli utenti

Disabilitare la funzionalità di feedback degli utenti

In qualità di amministratore del tenant puoi impedire ai tuoi utenti di inviare feedback a Microsoft disabilitando l'impostazione del tenant disableSurveyFeedback. Ulteriori informazioni sulla visualizzazione e l'impostazione delle impostazioni del tenant sono disponibili:

Richieste relative ai diritti dell'interessato sul feedback degli utenti

Gli amministratori del tenant possono visualizzare, esportare ed eliminare il feedback degli utenti accedendo all'Interfaccia di amministrazione di Microsoft 365 e selezionando Integrità>Feedback sul prodotto.

IA con risorse Power Automate

Uso delle variabili nelle azioni di scripting

Per dichiarare le variabili nelle azioni di scripting e restituire risultati in Power Automate, usa i seguenti comandi:

  • Per dichiarare nuove variabili negli script di PowerShell, usa la notazione $. Per restituire valori dalle azioni Esegui script PowerShell in Power Automate, utilizza il comando Scrivi output.

    $variableName = "variableValue"
    Write-Output $variableName
    
  • Gli script Python non richiedono alcuna notazione speciale per dichiarare nuove variabili. Per restituire valori da azioni Esegui script Python, usa la funzione print.

    variableName = "variableValue"
    print variableName
    
  • VBScript non richiede alcuna notazione speciale per dichiarare nuove variabili. Utilizza la funzione WScript.Echo per restituire valori dalle azioni Esegui VBScript in Power Automate.

    variableName = "variableValue"
    WScript.Echo variableName
    
  • Negli script JavaScript, usa la notazione var per dichiarare nuove variabili e la funzione WScript.Echo per restituire valori dalle opzioni Esegui JavaScript.

    var variableName = "variableValue";
    WScript.Echo(variableName);
    
  • Per gli script .NET, utilizza la finestra Parametri script, accessibile tramite la scheda di configurazione dell'azione Esegui script .NET. È possibile impostare il tipo della rispettiva variabile:

Screenshot della finestra Parametri script nell'azione Esegui script .NET, impostazione del tipo di variabile

Inoltre, puoi impostare se si tratta di un input per lo script .NET (opzione In nel menu a discesa Direzione), un output dello script (opzione Out nel menu a discesa Direzione) o entrambi (opzione In-Out nel menu a discesa Direzione).

Screenshot della finestra Parametri script nell'azione Esegui script .NET, impostazione della direzione

Per usare le variabili Power Automate nelle azioni di scripting, utilizza la notazione percentuale (%) e gestisci le variabili come i valori hardcoded.

Screenshot di uno script Python che contiene la notazione percentuale.

Esegui comando DOS

Esegue un comando DOS o un'applicazione console in modalità invisibile e ne recupera l'output al completamento.

Parametri di input

Argomento Facoltativo Accetta Valore predefinito Descrizione
DOS command or application No file Nome del comando DOS o di un'applicazione console, con argomenti se applicabili
Working folder Cartella Percorso completo della cartella su cui lavorare, se applicabile
Errore dopo timeout Valore booleano Specifica se l'applicazione o il comando DOS verrà eseguito in modo indefinito o non riesce dopo un periodo di tempo impostato
Timeout No Valore numerico 10 Numero massimo di secondi di attesa per il completamento dello script (-1 per indefinito)
Change code page N/A Valore booleano False Specifica se modificare la pagina dei codici corrente della sessione
Encoding No ASMO-708: arabo (ASMO 708), big5: cinese tradizionale (Big5), cp1025: IBM EBCDIC (cirillico serbo-bulgaro), cp866: cirillico (DOS), cp875: IBM EBCDIC (greco moderno), csISO2022JP: giapponese (JIS-Allow 1 byte Kana), DOS-720: arabo (DOS), DOS-862: ebraico (DOS), EUC-CN: cinese semplificato (EUC), EUC-JP: giapponese (JIS 0208-1990 e 0212-1990), euc-jp: giapponese (EUC), euc-kr: coreano (EUC), GB18030: cinese semplificato (GB18030), gb2312: cinese semplificato (GB2312), hz-gb-2312: cinese semplificato (HZ), IBM-Thai: IBM EBCDIC (Thai), IBM00858: OEM Multilingual Latin I, IBM00924: IBM Latin-1, IBM01047: IBM Latin-1, IBM01140: IBM EBCDIC (US-Canada-Euro), IBM01141: IBM EBCDIC (Germany-Euro), IBM01142: IBM EBCDIC (Danimarca-Norvegia-Euro), IBM01143: IBM EBCDIC (Finlandia-Svezia-Euro), IBM01144: IBM EBCDIC (Italia-Euro), IBM01145: IBM EBCDIC (Spagna-Euro), IBM01146: IBM EBCDIC (UK-Euro), IBM01147: IBM EBCDIC (Francia-Euro), IBM01148: IBM EBCDIC (Internazionale-Euro), IBM01149: IBM EBCDIC (islandese-Euro), IBM037: IBM EBCDIC (USA-Canada), IBM1026: IBM EBCDIC (Turkish Latin-5), IBM273: IBM EBCDIC (Germania), IBM277: IBM EBCDIC (Danimarca-Norvegia), IBM278: IBM EBCDIC (Finlandia-Svezia), IBM280: IBM EBCDIC (Italia), IBM284: IBM EBCDIC (Spagna), IBM285: IBM EBCDIC (Regno Unito), IBM290: IBM EBCDIC (katakana giapponese), IBM297: IBM EBCDIC (Francia), IBM420: IBM EBCDIC (arabo), IBM423: IBM EBCDIC (greco), IBM424: IBM EBCDIC (ebraico), IBM437: OEM Stati Uniti, IBM500: IBM EBCDIC (internazionale), ibm737: greco (DOS), ibm775: Baltico (DOS), ibm850: Europa occidentale (DOS), ibm852: Europa centrale (DOS), IBM855: cirillico OEM, ibm857: turco (DOS), IBM860: portoghese (DOS), ibm861: islandese (DOS), IBM863: canadese francese (DOS), IBM864: arabo (864), IBM865: nordico (DOS), ibm869: greco, moderno (DOS), IBM870: IBM EBCDIC (multilingue latino-2), IBM871: IBM EBCDIC (islandese), IBM880: IBM EBCDIC (cirillico russo), IBM905: IBM EBCDIC (turco), iso-2022-jp: giapponese (JIS), iso-2022-jp: giapponese (JIS-Allow 1 byte Kana-SO/SI), iso-2022-kr: coreano (ISO), iso-8859-1: Europa occidentale (ISO), iso-8859-13: estone (ISO), iso-8859-15: latino 9 (ISO), iso-8859-2: Europa centrale (ISO), iso-8859-3: latino 3 (ISO), iso-8859-4: baltico (ISO), iso-8859-5: cirillico (ISO), iso-8859-6: arabo (ISO), iso-8859-7: greco (ISO), iso-8859-8: ebraico (ISO-Visual), iso-8859-8-i: ebraico (ISO-logico), iso-8859-9: turco (ISO), Johab: coreano (Johab), koi8-r: cirillico (KOI8-R), koi8-u: cirillico (KOI8-U), ks_c_5601-1987: coreano, macintosh: Europa occidentale (Mac), shift_jis: giapponese (Shift-JIS), us-ascii: US-ASCII, utf-16: Unicode, utf-16BE: Unicode (Big-Endian), utf-32: Unicode (UTF-32), utf-32BE : Unicode (UTF-32 Big-Endian), utf-7: Unicode (UTF-7), utf-8: Unicode (UTF-8), windows-1250: Europa centrale (Windows), windows-1251: cirillico (Windows), Windows-1252: Europa occidentale (Windows), Windows-1253: Greco (Windows), Windows-1254: turco (Windows), Windows-1255: Ebraico (Windows), Windows-1256: Arabo (Windows), windows-1257: Baltic (Windows), windows-1258: vietnamita (Windows), windows-874: tailandese (Windows), x-Chinese-CNS: cinese tradizionale (CNS), x-Chinese-Eten: cinese tradizionale (Eten), x-cp20001: TCA Taiwan, x-cp20003: IBM5550 Taiwan, x-cp20004: TeleText Taiwan, x-cp20005: Wang Taiwan, x-cp20261: T.61, x-cp20269: ISO-6937, x-cp20936: cinese semplificato (GB2312-80), x-cp20949: coreano Wansung, x-cp50227: cinese semplificato (ISO-2022), x-EBCDIC-coreano esteso: IBM EBCDIC (coreano esteso), x-Europa: Europa, x-IA5: Europa occidentale (IA5), x-IA5-tedesco: tedesco (IA5), x-IA5-norvegese: norvegese (IA5), x-IA5-svedese: svedese (IA5), x-iscii-as: ISCII assamese, x-iscii-be: ISCII Bengali, x-iscii-de: ISCII Devanagari, x-iscii-gu: ISCII Gujarati, x-iscii-ka: ISCII Kannada, x-iscii-ma: ISCII Malayalam, x-iscii-or: ISCII Oriya, x-iscii-pa: ISCII Punjabi, x-iscii-ta: ISCII Tamil, x-iscii-te: ISCII Telugu, x-mac-arabic: arabo (Mac), x-mac-ce: centroeuropeo (Mac), x-mac-chinesesimp: cinese semplificato (Mac), x-mac-chinesetrad: cinese tradizionale (Mac), x-mac-croatian: croato (Mac), x-mac-cyrillic: cirillico (Mac), x-mac-greek: greco (Mac), x-mac-hebrew: ebraico (Mac), x-mac-islandese: islandese (Mac), x-mac-japanese: giapponese (Mac), x-mac-coreano: coreano (Mac), x-mac-rumeno: rumeno (Mac), x-mac-thai: tailandese (Mac), x-mac-turkish: turco (Mac), x-mac-ucraino: ucraino (Mac)` utf-8 : Unicode (UTF-8) Codifica da utilizzare per la lettura dell'output

Variabili prodotte

Argomento Type Descrizione
CommandOutput Valore di testo Output di testo dal comando DOS o dall'applicazione
CommandErrorOutput Valore di testo Testo che descrive gli errori (se presenti) che si sono verificati durante l'esecuzione del comando DOS o dell'applicazione
CommandExitCode Valore numerico Codice di uscita del comando o dell'applicazione. Questo valore è numerico

Eccezioni

Eccezione Description
Impossibile eseguire il comando o l'applicazione console Indica un problema durante l'esecuzione del comando specificato o dell'applicazione console specificata
Impossibile eseguire lo script nel tempo assegnato Indica un problema durante l'esecuzione dello script specificato nel tempo assegnato

Esegui VBScript

Esegue un codice VBScript personalizzato e ne recupera l'output in una variabile.

Puoi utilizzare questa azione per includere il tuo codice VBScript personalizzato nel flusso del desktop, avendo anche la possibilità di utilizzare le variabili al suo interno, per generare contenuto VBScript dinamico, se necessario.

Parametri di input

Argomento Facoltativo Accetta Valore predefinito Descrizione
VBScript to run Valore di testo Codice VBScript da eseguire. Le variabili possono essere incluse nello script perché verranno valutate prima dell'esecuzione del codice VBScript
Errore dopo timeout Valore booleano N/A Specifica se lo script VBScript verrà eseguito in modo indefinito o non riesce dopo un periodo di tempo impostato
Timeout No Valore numerico 10 Numero massimo di secondi di attesa per il completamento dello script (-1 per indefinito)

Variabili prodotte

Argomento Type Descrzione
VBScriptOutput Valore di testo Output dello script
ScriptError Valore di testo Errori che possono verificarsi durante l'esecuzione del codice VBScript

Eccezioni

Eccezione Descrzione
Impossibile eseguire lo script nel tempo assegnato Indica un problema durante l'esecuzione dello script specificato nel tempo assegnato

Esegui JavaScript

Esegue un codice JavaScript personalizzato e ne recupera l'output in una variabile.

Parametri di input

Argomento Facoltativo Accetta Valore predefinito Descrizione
JavaScript to run Valore di testo Codice JavaScript da eseguire. Le variabili possono essere incluse nello script perché verranno valutate prima dell'esecuzione del codice JavaScript
Errore dopo timeout Valore booleano Specifica se lo script Javascript verrà eseguito in modo indefinito o non riesce dopo un periodo di tempo impostato
Timeout No Valore numerico 10 Numero massimo di secondi di attesa per il completamento dello script (-1 per indefinito)

Variabili prodotte

Argomento Type Descrzione
JavascriptOutput Valore di testo Output dello script
ScriptError Valore di testo Errori che possono verificarsi durante l'esecuzione del codice JavaScript

Eccezioni

Eccezione Descrzione
Impossibile eseguire lo script nel tempo assegnato Indica un problema durante l'esecuzione dello script specificato nel tempo assegnato

Esegui script PowerShell

Esegue uno script PowerShell personalizzato e ne recupera l'output in una variabile.

Puoi utilizzare questa azione per includere il tuo codice PowerShell personalizzato nel flusso del desktop, avendo anche la possibilità di utilizzare le variabili al suo interno, per generare contenuto PowerShell dinamico, se necessario.

Parametri di input

Argomento Facoltativo Accetta Valore predefinito Descrizione
PowerShell code to run Valore di testo Codice PowerShell da eseguire. Le variabili possono essere incluse nello script perché verranno valutate prima dell'esecuzione del codice PowerShell
Errore dopo timeout Valore booleano Specifica se lo script PowerShell verrà eseguito in modo indefinito o non riesce dopo un periodo di tempo impostato
Timeout No Valore numerico 10 Numero massimo di secondi di attesa per il completamento dello script (-1 per indefinito)

Variabili prodotte

Argomento Type Descrzione
PowershellOutput Valore di testo Output dello script
ScriptError Valore di testo Errori che possono verificarsi durante l'esecuzione del codice PowerShell

Eccezioni

Eccezione Descrizione
Impossibile eseguire lo script PowerShell Indica un problema durante l'esecuzione dello script PowerShell specificato
Impossibile eseguire lo script nel tempo assegnato Indica un problema durante l'esecuzione dello script specificato nel tempo assegnato

Esegui script Python

Esegue il codice dello script Python e ne recupera l'output.

Parametri di input

Argomento Facoltativo Accetta Valore predefinito Description
Python script to run No Valore di testo Il codice dello script Python da eseguire
Versione di Python No Python 2.7, Python 3.4 Python 2.7 Specifica la versione del Python da utilizzare durante l'esecuzione dello script
Module folder paths Elenco di cartelle Percorsi delle cartelle in cui si trovano i moduli Python esterni

Variabili prodotte

Argomento Type Description
PythonScriptOutput Valore di testo Output dello script
ScriptError Valore di testo Errori che possono verificarsi durante l'esecuzione del codice dello script Python

Eccezioni

Eccezione Descrizione
Impossibile eseguire lo script Python Indica un problema durante l'esecuzione dello script Python specificato
Directory non trovata Indica che la directory non è stata trovata

Esegui script .NET

Esegue il codice dello script .NET (C#/VB.NET) e ne recupera l'output.

Parametri di input

Argomento Facoltativo Accetta Valore predefinito Description
Lingua N/A C#/ VB.NET C# Lingua dello script
Importazioni script .NET Valore di testo Le importazioni di script .NET da includere nello script
Riferimenti da caricare Cartella Percorso radice in cui si trovano i riferimenti alle librerie (file .dll) di collegamenti dinamici .NET
Parametri script Parametri dello script definiti dall'utente Impostazione dei valori dei parametri definiti nello script
Codice .NET da eseguire No Valore di testo Codice .NET da eseguire

Variabili prodotte

Questa azione potrebbe produrre variabili, a seconda della configurazione effettuata dall'utente durante l'utilizzo della finestra Parametri script.

Nota

Nel caso in cui l'azione sia configurata per produrre parametri di output (usando la direzione Out durante la configurazione), dovresti sempre assicurarti che il parametro all'interno dello script sia impostato su un valore diverso da null. In caso contrario, l'esecuzione dello script risulterà in un errore poiché il parametro di output non è stato impostato.

Eccezioni

Eccezione Description
Impossibile eseguire lo script .NET Indica un problema durante l'esecuzione dello script .NET specificato