Есть ли способ установить переменные среды для одной команды в Windows, как ENVVAR=abc command
в Unix?
Переменные, установленные set
командой в Windows, похоже, остаются для следующих команд, но это не то, что я хочу.
windows
environment-variables
谷口 昂 平
источник
источник
Ответы:
Есть ли способ установить переменные среды для одной команды?
Из текущей
cmd
оболочки:Вы должны очистить переменную самостоятельно.
Из пакетного файла:
Вы можете использовать
setlocal
иendlocal
.Используйте дочернюю
cmd
оболочку:Вы можете использовать
cmd /c
для создания дочерней оболочки.Переменная устанавливается в дочерней оболочке и не влияет на родительскую оболочку (как указано в комментарии jpmc26 ).
Дальнейшее чтение
источник
cmd
процесс и установить их там. Например,cmd /C "set ENVVAR=abc && dir"
. Поскольку это не повлияет на родительский процесс, оно будет эффективно «очищено» при выходе.