¿Puedo cambiar el entorno por proceso en Windows (como en Unix)?

5

En los sistemas operativos Unix puedo iniciar un proceso con variables de entorno adicionales como esta:

$ DEBUG = 1 VERBOSE = 3 python myscript.py

¿El CMD de Windows tiene un equivalente para esto? Estoy atascado desarrollando en una computadora con Windows y quiero probar el comportamiento de lanzamiento sin tener que construir el proyecto o cambiar permanentemente las variables env en mi sesión CMD.

Hubro
fuente

Respuestas:

4

Tendría que envolver su comando en un archivo por lotes y luego usarlo setlocal:

setlocal
Set DEBUG=1
Set VERBOSE=1
python myscript.py

Setlocal hace que todas las definiciones / cambios de variables sean locales en ese archivo por lotes.

Editar: puede usarlo setlocal/endlocalpara localizar un solo comando o un conjunto de comandos en lote, pero no funciona fuera del lote . Descripción completa de setlocal / endlocal

wmz
fuente
2

Lo más cercano que puede obtener es el comando SET. Este no es un comando permanente y se revertirá cuando abra una nueva sesión de CMD.

Ejemplo: SET variable = cadena

http://ss64.com/nt/set.html

xstnc
fuente
+1 Eso es genial, pero no es realmente equivalente al ejemplo de Unix. Quiero establecer variables de entorno para un proceso, pero SET cambia el entorno de la consola.
Hubro