PowerShell Universal è stato storicamente una piattaforma solo PowerShell. Con il rilascio di PowerShell Universal 4.2, aggiungeremo la possibilità di eseguire script Python. Questo articolo spiega come farlo con una build nightly 4.2.
Questa funzionalità sarà disponibile a novembre come parte di PowerShell Universal 4.2.
Ambienti Minimal
PowerShell Universal 4.2 introduce una nuova impostazione di ambiente denominata Minimal. Gli ambienti Minimal non tentano di caricare gli assembly Universal né di stabilire una connessione gRPC tra il processo figlio e il processo padre. In questo modo PowerShell Universal può essere eseguito in ambienti non basati su .NET. Gli ambienti Minimal usano STDOUT e STDERR per raccogliere l’output del processo avviato nell’ambiente. È utile anche per gli script PowerShell che caricano moduli in conflitto con gli assembly Universal.
Ambiente Python
Per configurare un ambiente Python, crei prima un nuovo ambiente e imposti il percorso su python.exe. Python deve essere installato sulla macchina. Imposti poi la riga di comando su {scriptPath}. Questo valore viene espanso al percorso dello script in esecuzione e passato in runtime.
Sebbene fosse già tecnicamente possibile eseguire script Python nelle versioni precedenti di PowerShell Universal, questo nuovo tipo di ambiente esegue Python in modo diretto, senza avviare un processo PowerShell intermedio che poi lancia Python. Il risultato è un avvio molto più rapido di questi job.
Eseguire script Python
Crei poi uno script con estensione .py. Abbiamo aggiornato la console di amministrazione per identificare correttamente gli script Python e applicare l’evidenziazione della sintassi. Infine, faccia clic su Run e selezioni l’ambiente Python.
Cosa succede ora per gli ambienti Minimal e l’integrazione Python?
Gli ambienti Minimal consentono di eseguire il processo desiderato dal motore di esecuzione degli script e di passare il percorso dello script come argomento. Poiché sostituiamo la macro {scriptPath}, può includere anche altri argomenti. Può essere utile per altri linguaggi di scripting, come bash su Linux. Gli ambienti Minimal non funzionano con API, Apps o Terminals. Queste funzionalità richiedono un’implementazione gRPC non disponibile in questi altri linguaggi e motori. Speriamo di pubblicare i nostri file proto gRPC nel periodo della versione v5. Ciò consentirebbe di generare client in qualsiasi linguaggio in cui gRPC e protobuf sono supportati.
Pronto a iniziare a creare? Scarichi PowerShell Universal.

Adam Driscoll