PowerShell Universal ha sido históricamente una plataforma solo para PowerShell. Con el lanzamiento de PowerShell Universal 4.2, añadiremos la posibilidad de ejecutar scripts de Python. Esta entrada explica cómo hacerlo con una compilación nightly de 4.2.
Esta funcionalidad se publicará en noviembre como parte de PowerShell Universal 4.2.
Entornos Minimal
PowerShell Universal 4.2 introduce un nuevo ajuste de entorno denominado Minimal. Los entornos Minimal no intentan cargar ensamblados de Universal ni establecer una conexión gRPC entre el proceso hijo y el proceso padre. Así, PowerShell Universal puede ejecutarse en entornos que no se basan en .NET. Los entornos Minimal aprovechan STDOUT y STDERR para recoger la salida del proceso iniciado en el entorno. También resulta útil para scripts de PowerShell que cargan módulos en conflicto con los ensamblados de Universal.
Entorno Python
Para configurar un entorno Python, cree primero un entorno nuevo y establezca la ruta a python.exe. Es necesario que Python esté instalado en el equipo. A continuación, defina la línea de comandos como {scriptPath}. Este valor se expande a la ruta del script que se ejecuta y se pasa en tiempo de ejecución.
Aunque ya era técnicamente posible ejecutar scripts de Python en versiones anteriores de PowerShell Universal, este nuevo tipo de entorno ejecuta Python de forma directa, sin iniciar un proceso intermedio de PowerShell que luego lance Python. El resultado es un arranque mucho más rápido de estos trabajos.
Ejecutar scripts de Python
A continuación, cree un script con extensión .py. Hemos actualizado la consola de administración para identificar correctamente los scripts de Python y aplicarles resaltado de sintaxis. Por último, pulse Run y seleccione su entorno Python.
¿Qué sigue para los entornos Minimal y la integración de Python?
Los entornos Minimal permiten ejecutar el proceso que desee desde el motor de ejecución de scripts y pasar la ruta del script como argumento. Como sustituimos la macro {scriptPath}, también puede incluir otros argumentos. Esto puede ser útil para otros lenguajes de script, como bash en Linux. Los entornos Minimal no funcionan con APIs, Apps ni Terminals. Esas funciones requieren una implementación gRPC que no está disponible en esos otros lenguajes y motores. Esperamos publicar nuestros archivos proto de gRPC en el plazo de la versión v5. Eso permitiría generar clientes en cualquier lenguaje donde gRPC y protobuf estén admitidos.
¿Listo para crear? Descargue PowerShell Universal.

Adam Driscoll